diff options
author | Saurav Kashyap <saurav.kashyap@qlogic.com> | 2011-08-16 14:29:25 -0400 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2011-08-27 10:19:37 -0400 |
commit | 7594206493880007fd68a18d6e9f380a1afe20d4 (patch) | |
tree | 8a6c7d83958e45bae0142a114b65feb31fcf400d /drivers/scsi/qla2xxx | |
parent | 42cd4f5dc2a3de31bfd24642ab4e8b21834a6b78 (diff) |
[SCSI] qla2xxx: Acquire hardware lock while manipulating dsd list.
The dsd list shouldn't be manipulated without taking the per host hardware
lock to prevent multiple callers from trampling upon one another.
Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com>
Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/qla2xxx')
-rw-r--r-- | drivers/scsi/qla2xxx/qla_os.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c index f57c292845a5..2caab83c4c9f 100644 --- a/drivers/scsi/qla2xxx/qla_os.c +++ b/drivers/scsi/qla2xxx/qla_os.c | |||
@@ -913,7 +913,10 @@ qla2xxx_eh_abort(struct scsi_cmnd *cmd) | |||
913 | "Abort command mbx success.\n"); | 913 | "Abort command mbx success.\n"); |
914 | wait = 1; | 914 | wait = 1; |
915 | } | 915 | } |
916 | |||
917 | spin_lock_irqsave(&ha->hardware_lock, flags); | ||
916 | qla2x00_sp_compl(ha, sp); | 918 | qla2x00_sp_compl(ha, sp); |
919 | spin_unlock_irqrestore(&ha->hardware_lock, flags); | ||
917 | 920 | ||
918 | /* Wait for the command to be returned. */ | 921 | /* Wait for the command to be returned. */ |
919 | if (wait) { | 922 | if (wait) { |