For FC-NVMe, if the fw_started flag is not set or
fcport is deleted, then do not send Abort command

Signed-off-by: Himanshu Madhani <hmadh...@marvell.com>
---
 drivers/scsi/qla2xxx/qla_nvme.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/drivers/scsi/qla2xxx/qla_nvme.c b/drivers/scsi/qla2xxx/qla_nvme.c
index 232b987e79dd..41c85da3ab32 100644
--- a/drivers/scsi/qla2xxx/qla_nvme.c
+++ b/drivers/scsi/qla2xxx/qla_nvme.c
@@ -185,6 +185,14 @@ static void qla_nvme_abort_work(struct work_struct *work)
        struct qla_hw_data *ha = fcport->vha->hw;
        int rval;
 
+       if (fcport)
+               ql_dbg(ql_dbg_io, fcport->vha, 0xffff,
+                   "%s called for sp=%p, hndl=%x on fcport=%p deleted=%d\n",
+                   __func__, sp, sp->handle, fcport, fcport->deleted);
+
+       if (!ha->flags.fw_started && (fcport && fcport->deleted))
+               return;
+
        rval = ha->isp_ops->abort_command(sp);
 
        ql_dbg(ql_dbg_io, fcport->vha, 0x212b,
-- 
2.12.0

Reply via email to