summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx/qla_isr.c
diff options
context:
space:
mode:
authorDarren Trapp <darren.trapp@cavium.com>2018-03-20 23:09:35 -0700
committerMartin K. Petersen <martin.petersen@oracle.com>2018-03-21 18:38:54 -0400
commit870fe24f3c0b2cf40998f8ab21d4cf4e4e9cf619 (patch)
treec33e7433afd7c1c47cb8a2917ec2d888be548079 /drivers/scsi/qla2xxx/qla_isr.c
parent1763c1fd76d8e26c5e6d5a3e415e7deeeda3c5da (diff)
downloadlinux-0-day-870fe24f3c0b2cf40998f8ab21d4cf4e4e9cf619.tar.gz
linux-0-day-870fe24f3c0b2cf40998f8ab21d4cf4e4e9cf619.tar.xz
scsi: qla2xxx: Return busy if rport going away
This patch adds mechanism to return EBUSY if rport is going away to prevent exhausting FC-NVMe layer's retry counter. Signed-off-by: Darren Trapp <darren.trapp@cavium.com> Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com> Reviewed-by: Hannes Reinecke <hare@suse.com> Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/qla2xxx/qla_isr.c')
-rw-r--r--drivers/scsi/qla2xxx/qla_isr.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/scsi/qla2xxx/qla_isr.c b/drivers/scsi/qla2xxx/qla_isr.c
index 913cd6cf5907f..bc2c7ded6949f 100644
--- a/drivers/scsi/qla2xxx/qla_isr.c
+++ b/drivers/scsi/qla2xxx/qla_isr.c
@@ -1910,9 +1910,11 @@ qla24xx_nvme_iocb_entry(scsi_qla_host_t *vha, struct req_que *req, void *tsk)
ret = QLA_SUCCESS;
break;
- case CS_ABORTED:
case CS_RESET:
case CS_PORT_UNAVAILABLE:
+ fcport->nvme_flag |= NVME_FLAG_RESETTING;
+ /* fall through */
+ case CS_ABORTED:
case CS_PORT_LOGGED_OUT:
case CS_PORT_BUSY:
ql_log(ql_log_warn, fcport->vha, 0x5060,