diff options
author | Mike Hernandez <michael.hernandez@qlogic.com> | 2011-12-02 07:42:07 +0100 |
---|---|---|
committer | James Bottomley <JBottomley@Parallels.com> | 2011-12-15 07:57:41 +0100 |
commit | 9acf753393cde200e9d25574c6d7d2cf57636001 (patch) | |
tree | b46502cf9d72ddfa83f7cf22be732ecf8757db93 /drivers/scsi/qla4xxx | |
parent | [SCSI] qla4xxx: Perform context resets in case of context failures. (diff) | |
download | linux-9acf753393cde200e9d25574c6d7d2cf57636001.tar.xz linux-9acf753393cde200e9d25574c6d7d2cf57636001.zip |
[SCSI] qla4xxx: Fix CPU lockups when ql4xdontresethba set
Fix issue where CPU lockup is seen when ql4xdontresethba is set and
driver is "stuck" in NEED_RESET state handler.
Signed-off-by: Mike Hernandez <michael.hernandez@qlogic.com>
Signed-off-by: Vikas Chaudhary <vikas.chaudhary@qlogic.com>
Reviewed-by: Mike Christie <michaelc@cs.wisc.edu>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/qla4xxx')
-rw-r--r-- | drivers/scsi/qla4xxx/ql4_nx.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/scsi/qla4xxx/ql4_nx.c b/drivers/scsi/qla4xxx/ql4_nx.c index f484ff438199..7fc29c6ff57e 100644 --- a/drivers/scsi/qla4xxx/ql4_nx.c +++ b/drivers/scsi/qla4xxx/ql4_nx.c @@ -1836,6 +1836,10 @@ int qla4_8xxx_device_state_handler(struct scsi_qla_host *ha) * reset handler */ dev_init_timeout = jiffies + (ha->nx_dev_init_timeout * HZ); + } else { + qla4_8xxx_idc_unlock(ha); + msleep(1000); + qla4_8xxx_idc_lock(ha); } qla4_8xxx_idc_unlock(ha); break; |