From: Santosh Vernekar Date: Wed, 22 Aug 2012 18:21:13 +0000 (-0400) Subject: [SCSI] qla2xxx: Perform ROM mbx cmd access only after ISP soft-reset during f/w recovery. X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=a6171297c2dc5964570ca6a2036bddff9530004e;p=deliverable%2Flinux.git [SCSI] qla2xxx: Perform ROM mbx cmd access only after ISP soft-reset during f/w recovery. Signed-off-by: Santosh Vernekar Signed-off-by: Chad Dupuis Signed-off-by: James Bottomley --- diff --git a/drivers/scsi/qla2xxx/qla_init.c b/drivers/scsi/qla2xxx/qla_init.c index 414f810726f0..117338da6053 100644 --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c @@ -4301,17 +4301,17 @@ qla2x00_abort_isp(scsi_qla_host_t *vha) struct req_que *req = ha->req_q_map[0]; unsigned long flags; - if (IS_QLA8031(ha)) { - ql_dbg(ql_dbg_p3p, vha, 0xb05c, - "Clearing fcoe driver presence.\n"); - if (qla83xx_clear_drv_presence(vha) != QLA_SUCCESS) - ql_dbg(ql_dbg_p3p, vha, 0xb073, - "Erro while clearing DRV-Presence.\n"); - } - if (vha->flags.online) { qla2x00_abort_isp_cleanup(vha); + if (IS_QLA8031(ha)) { + ql_dbg(ql_dbg_p3p, vha, 0xb05c, + "Clearing fcoe driver presence.\n"); + if (qla83xx_clear_drv_presence(vha) != QLA_SUCCESS) + ql_dbg(ql_dbg_p3p, vha, 0xb073, + "Error while clearing DRV-Presence.\n"); + } + if (unlikely(pci_channel_offline(ha->pdev) && ha->flags.pci_channel_io_perm_failure)) { clear_bit(ISP_ABORT_RETRY, &vha->dpc_flags);