aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi
diff options
context:
space:
mode:
authorSaurav Kashyap <saurav.kashyap@qlogic.com>2012-11-21 02:40:36 -0500
committerJames Bottomley <JBottomley@Parallels.com>2012-11-30 10:10:38 -0500
commit807fb6d8afad1552c6981256a83bc2c0ce4e2125 (patch)
tree6f6e6b42d9bdd0f6a2a8f3836a1f7268d1f6c5b0 /drivers/scsi
parent8c0bc701f9cd393119056cf6c9863bc5503cb0dd (diff)
[SCSI] qla2xxx: Ignore driver ack bit if corresponding presence bit is not set.
Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi')
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 67f7b56e1b0b..9ad66a3abe12 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -4230,7 +4230,7 @@ qla83xx_need_reset_handler(scsi_qla_host_t *vha)
4230 while (1) { 4230 while (1) {
4231 qla83xx_rd_reg(vha, QLA83XX_IDC_DRIVER_ACK, &drv_ack); 4231 qla83xx_rd_reg(vha, QLA83XX_IDC_DRIVER_ACK, &drv_ack);
4232 qla83xx_rd_reg(vha, QLA83XX_IDC_DRV_PRESENCE, &drv_presence); 4232 qla83xx_rd_reg(vha, QLA83XX_IDC_DRV_PRESENCE, &drv_presence);
4233 if (drv_ack == drv_presence) 4233 if ((drv_ack & drv_presence) == drv_presence)
4234 break; 4234 break;
4235 4235
4236 if (time_after_eq(jiffies, ack_timeout)) { 4236 if (time_after_eq(jiffies, ack_timeout)) {