summaryrefslogtreecommitdiffstats
path: root/drivers/fc4
diff options
context:
space:
mode:
authorJeff Garzik <jgarzik@pobox.com>2005-05-28 07:47:39 -0400
committerJeff Garzik <jgarzik@pobox.com>2005-06-17 12:04:37 -0500
commite3df715501be3329986e5d9dfa9a477f49e7996b (patch)
tree3602c4bbca8bca9b615b93099de53717bc932591 /drivers/fc4
parent12021fff2bae7fab01c4bf283f3cd9bc6997d8c4 (diff)
downloadlinux-e3df715501be3329986e5d9dfa9a477f49e7996b.tar.gz
linux-e3df715501be3329986e5d9dfa9a477f49e7996b.tar.bz2
linux-e3df715501be3329986e5d9dfa9a477f49e7996b.zip
[SCSI] Remove unnecessary locking around completion function calls
The SCSI ->done() hook should not be called from inside a spinlock. Drivers that do this are mostly cut-n-paste from 2.2.x-era. Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/fc4')
-rw-r--r--drivers/fc4/fc.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/drivers/fc4/fc.c b/drivers/fc4/fc.c
index 1fbb219aa9ba..d9e11b536659 100644
--- a/drivers/fc4/fc.c
+++ b/drivers/fc4/fc.c
@@ -767,10 +767,8 @@ static void fcp_scsi_done (Scsi_Cmnd *SCpnt)
{
unsigned long flags;
- spin_lock_irqsave(SCpnt->device->host->host_lock, flags);
if (FCP_CMND(SCpnt)->done)
FCP_CMND(SCpnt)->done(SCpnt);
- spin_unlock_irqrestore(SCpnt->device->host->host_lock, flags);
}
static int fcp_scsi_queue_it(fc_channel *fc, Scsi_Cmnd *SCpnt, fcp_cmnd *fcmd, int prepare)
@@ -912,9 +910,7 @@ int fcp_scsi_abort(Scsi_Cmnd *SCpnt)
unsigned long flags;
SCpnt->result = DID_ABORT;
- spin_lock_irqsave(SCpnt->device->host->host_lock, flags);
fcmd->done(SCpnt);
- spin_unlock_irqrestore(SCpnt->device->host->host_lock, flags);
printk("FC: soft abort\n");
return SUCCESS;
} else {