]> err.no Git - linux-2.6/commitdiff
[SCSI] megaraid_sas: fix EH locking
authorChristoph Hellwig <hch@lst.de>
Mon, 31 Oct 2005 18:51:24 +0000 (19:51 +0100)
committerJames Bottomley <jejb@mulgrave.(none)>
Sun, 6 Nov 2005 18:50:41 +0000 (12:50 -0600)
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>
drivers/scsi/megaraid/megaraid_sas.c

index 4245d05e628b7f4ef56fe852745fbdb4cd1b96c8..2463f47adfdaf555613cf5549a1d76c9363ce07a 100644 (file)
@@ -767,17 +767,12 @@ static int megasas_generic_reset(struct scsi_cmnd *scmd)
                return FAILED;
        }
 
-       spin_unlock(scmd->device->host->host_lock);
-
        ret_val = megasas_wait_for_outstanding(instance);
-
        if (ret_val == SUCCESS)
                printk(KERN_NOTICE "megasas: reset successful \n");
        else
                printk(KERN_ERR "megasas: failed to do reset\n");
 
-       spin_lock(scmd->device->host->host_lock);
-
        return ret_val;
 }