summaryrefslogtreecommitdiffstats
path: root/drivers
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 15:10:38 +0000
commit807fb6d8afad1552c6981256a83bc2c0ce4e2125 (patch)
tree6f6e6b42d9bdd0f6a2a8f3836a1f7268d1f6c5b0 /drivers
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')
-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 67f7b56e1b0..9ad66a3abe1 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)
while (1) {
qla83xx_rd_reg(vha, QLA83XX_IDC_DRIVER_ACK, &drv_ack);
qla83xx_rd_reg(vha, QLA83XX_IDC_DRV_PRESENCE, &drv_presence);
- if (drv_ack == drv_presence)
+ if ((drv_ack & drv_presence) == drv_presence)
break;
if (time_after_eq(jiffies, ack_timeout)) {