]> git.karo-electronics.de Git - linux-beck.git/commitdiff
[SCSI] qla4xxx: Fix CPU lockups when ql4xdontresethba set
authorMike Hernandez <michael.hernandez@qlogic.com>
Fri, 2 Dec 2011 06:42:07 +0000 (22:42 -0800)
committerJames Bottomley <JBottomley@Parallels.com>
Thu, 15 Dec 2011 06:57:41 +0000 (10:57 +0400)
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>
drivers/scsi/qla4xxx/ql4_nx.c

index f484ff43819928f5678ebff0187b7f503a609675..7fc29c6ff57e2ded4a3ec7d296912314fb8ca80c 100644 (file)
@@ -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;