aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_isr.c
diff options
context:
space:
mode:
authorChad Dupuis <chad.dupuis@qlogic.com>2014-04-11 16:54:07 -0400
committerChristoph Hellwig <hch@lst.de>2014-05-19 07:30:59 -0400
commitacd3ce880c78d575ed0b2e5670b1f7d7f7a39360 (patch)
tree6c35d0a3eb15c527348dd3050077315bcaaf758e /drivers/scsi/qla2xxx/qla_isr.c
parentec1937a21ba193b489f669484e2180b9e08f0c7f (diff)
qla2xxx: Do not schedule reset when one is already active when receiving an invalid status handle.
If an adapter reset is already in progress, do not schedule another one when we receive an invalid status handle. Signed-off-by: Chad Dupuis <chad.dupuis@qlogic.com> Signed-off-by: Saurav Kashyap <saurav.kashyap@qlogic.com> Signed-off-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_isr.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_isr.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
index 95314ef2e505..7549d09a64da 100644
--- a/drivers/scsi/qla2xxx/qla_isr.c
+++ b/drivers/scsi/qla2xxx/qla_isr.c
@@ -2009,11 +2009,13 @@ qla2x00_status_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, void *pkt)
2009 ql_dbg(ql_dbg_io, vha, 0x3017, 2009 ql_dbg(ql_dbg_io, vha, 0x3017,
2010 "Invalid status handle (0x%x).\n", sts->handle); 2010 "Invalid status handle (0x%x).\n", sts->handle);
2011 2011
2012 if (IS_P3P_TYPE(ha)) 2012 if (!test_bit(ABORT_ISP_ACTIVE, &vha->dpc_flags)) {
2013 set_bit(FCOE_CTX_RESET_NEEDED, &vha->dpc_flags); 2013 if (IS_P3P_TYPE(ha))
2014 else 2014 set_bit(FCOE_CTX_RESET_NEEDED, &vha->dpc_flags);
2015 set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags); 2015 else
2016 qla2xxx_wake_dpc(vha); 2016 set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags);
2017 qla2xxx_wake_dpc(vha);
2018 }
2017 return; 2019 return;
2018 } 2020 }
2019 2021