diff options
author | Christoph Hellwig <hch@lst.de> | 2005-10-31 13:51:24 -0500 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.(none)> | 2005-11-06 13:50:41 -0500 |
commit | 3072c4abdd8c239a28085733adf3aaae94ad8fbe (patch) | |
tree | 4022443ea9bf6c8bbbb49c11eb67937c798b3f3f /drivers/scsi/megaraid/megaraid_sas.c | |
parent | 7dfdc9a52b4219fba8240750e36de5db860ddd5f (diff) |
[SCSI] megaraid_sas: fix EH locking
recent kernels call the eh_ methods without the host lock held.
megaraid_sas doesn't need it but drops it before calling a sleeping
routine and reqcquires it afterwards. Just remove the
spin_unlock/spin_lock calls.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/scsi/megaraid/megaraid_sas.c')
-rw-r--r-- | drivers/scsi/megaraid/megaraid_sas.c | 5 |
1 files changed, 0 insertions, 5 deletions
diff --git a/drivers/scsi/megaraid/megaraid_sas.c b/drivers/scsi/megaraid/megaraid_sas.c index 4245d05e628b..2463f47adfda 100644 --- a/drivers/scsi/megaraid/megaraid_sas.c +++ b/drivers/scsi/megaraid/megaraid_sas.c | |||
@@ -767,17 +767,12 @@ static int megasas_generic_reset(struct scsi_cmnd *scmd) | |||
767 | return FAILED; | 767 | return FAILED; |
768 | } | 768 | } |
769 | 769 | ||
770 | spin_unlock(scmd->device->host->host_lock); | ||
771 | |||
772 | ret_val = megasas_wait_for_outstanding(instance); | 770 | ret_val = megasas_wait_for_outstanding(instance); |
773 | |||
774 | if (ret_val == SUCCESS) | 771 | if (ret_val == SUCCESS) |
775 | printk(KERN_NOTICE "megasas: reset successful \n"); | 772 | printk(KERN_NOTICE "megasas: reset successful \n"); |
776 | else | 773 | else |
777 | printk(KERN_ERR "megasas: failed to do reset\n"); | 774 | printk(KERN_ERR "megasas: failed to do reset\n"); |
778 | 775 | ||
779 | spin_lock(scmd->device->host->host_lock); | ||
780 | |||
781 | return ret_val; | 776 | return ret_val; |
782 | } | 777 | } |
783 | 778 | ||