lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 11 Nov 2009 10:50:58 -0600 From: "Stephen M. Cameron" <scameron@...rdog.cce.hp.com> To: akpm@...ux-foundation.org, James.Bottomley@...senPartnership.com Cc: linux-kernel@...r.kernel.org, linux-scsi@...r.kernel.org, scameron@...rdog.cce.hp.com, mikem@...rdog.cce.hp.com Subject: [PATCH 07/17] hpsa: Factor out command submission sequence hpsa: Factor out command submission sequence. There are a few places where the same sequence of statements occurs to submit and wait for the completion of a command. Factor these out into a separate function. Signed-off-by: Stephen M. Cameron <scameron@...rdog.cce.hp.com> --- drivers/scsi/hpsa.c | 10 ++-------- 1 files changed, 2 insertions(+), 8 deletions(-) diff --git a/drivers/scsi/hpsa.c b/drivers/scsi/hpsa.c index d5a795e..81fbbff 100644 --- a/drivers/scsi/hpsa.c +++ b/drivers/scsi/hpsa.c @@ -2086,7 +2086,6 @@ static int hpsa_passthru_ioctl(struct ctlr_info *h, void __user *argp) struct CommandList *c; char *buff = NULL; union u64bit temp64; - DECLARE_COMPLETION_ONSTACK(wait); if (!argp) return -EINVAL; @@ -2144,9 +2143,7 @@ static int hpsa_passthru_ioctl(struct ctlr_info *h, void __user *argp) c->SG[0].Len = iocommand.buf_size; c->SG[0].Ext = 0; /* we are not chaining*/ } - c->waiting = &wait; - enqueue_cmd_and_start_io(h, c); - wait_for_completion(&wait); + hpsa_scsi_do_simple_cmd_core(h, c); /* unlock the buffers from DMA */ temp64.val32.lower = c->SG[0].Addr.lower; @@ -2186,7 +2183,6 @@ static int hpsa_big_passthru_ioctl(struct ctlr_info *h, void __user *argp) BYTE sg_used = 0; int status = 0; int i; - DECLARE_COMPLETION_ONSTACK(wait); __u32 left; __u32 sz; BYTE __user *data_ptr; @@ -2280,9 +2276,7 @@ static int hpsa_big_passthru_ioctl(struct ctlr_info *h, void __user *argp) c->SG[i].Ext = 0; } } - c->waiting = &wait; - enqueue_cmd_and_start_io(h, c); - wait_for_completion(&wait); + hpsa_scsi_do_simple_cmd_core(h, c); /* unlock the buffers from DMA */ for (i = 0; i < sg_used; i++) { temp64.val32.lower = c->SG[i].Addr.lower; -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists