diff options
author | Kashyap, Desai <kashyap.desai@lsi.com> | 2009-08-20 03:50:54 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2009-09-05 10:34:21 -0400 |
commit | cd4e12e8ad246ec5bc23ab04d0da0e6985025620 (patch) | |
tree | d70dec04648c16b4c04d20935207d38a6eceb6e4 /drivers/scsi/mpt2sas/mpt2sas_base.c | |
parent | 69cb48750b02034350bc78d8053647d7464cdde0 (diff) |
[SCSI] mpt2sas : Rescan topology from Interrupt context instead of work thread
Following host reset its possible that the controller firmware could
assign new handles for devices, as well as adding or deleting devices. There is
code in the driver that will rescan the topology folowing host reset; updating
device handles, and remove devices that are no longer responding. This patch
will improve the responsivness by moving this rescaning from the delayed hotplug
worker thread to immediately following the host reset.
Signed-off-by: Kashyap Desai <kashyap.desai@lsi.com>
Reviewed-by: Eric Moore <Eric.moore@lsi.com>
Cc: Stable Tree <stable@kernel.org>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/mpt2sas/mpt2sas_base.c')
-rw-r--r-- | drivers/scsi/mpt2sas/mpt2sas_base.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/scsi/mpt2sas/mpt2sas_base.c b/drivers/scsi/mpt2sas/mpt2sas_base.c index 35a13867495e..cc5a8dae4ae1 100644 --- a/drivers/scsi/mpt2sas/mpt2sas_base.c +++ b/drivers/scsi/mpt2sas/mpt2sas_base.c | |||
@@ -3536,5 +3536,8 @@ mpt2sas_base_hard_reset_handler(struct MPT2SAS_ADAPTER *ioc, int sleep_flag, | |||
3536 | spin_lock_irqsave(&ioc->ioc_reset_in_progress_lock, flags); | 3536 | spin_lock_irqsave(&ioc->ioc_reset_in_progress_lock, flags); |
3537 | ioc->ioc_reset_in_progress = 0; | 3537 | ioc->ioc_reset_in_progress = 0; |
3538 | spin_unlock_irqrestore(&ioc->ioc_reset_in_progress_lock, flags); | 3538 | spin_unlock_irqrestore(&ioc->ioc_reset_in_progress_lock, flags); |
3539 | |||
3540 | if (!r) | ||
3541 | _base_reset_handler(ioc, MPT2_IOC_RUNNING); | ||
3539 | return r; | 3542 | return r; |
3540 | } | 3543 | } |