mirror of
https://github.com/torvalds/linux.git
synced 2026-05-24 15:12:13 +02:00
scsi: qla2xxx: Fix I/O errors during LIP reset tests
In .fcp_io(), returning ENODEV as soon as remote port delete has started can cause I/O errors. Fix this by returning EBUSY until the remote port delete finishes. Link: https://lore.kernel.org/r/20200904045128.23631-9-njavali@marvell.com Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com> Signed-off-by: Arun Easi <aeasi@marvell.com> Signed-off-by: Nilesh Javali <njavali@marvell.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
parent
49db4d4e02
commit
a35f87bdcc
|
|
@ -548,6 +548,14 @@ static int qla_nvme_post_cmd(struct nvme_fc_local_port *lport,
|
|||
return rval;
|
||||
|
||||
vha = fcport->vha;
|
||||
|
||||
if (!(fcport->nvme_flag & NVME_FLAG_REGISTERED))
|
||||
return rval;
|
||||
|
||||
if (test_bit(ABORT_ISP_ACTIVE, &vha->dpc_flags) ||
|
||||
(qpair && !qpair->fw_started) || fcport->deleted)
|
||||
return -EBUSY;
|
||||
|
||||
/*
|
||||
* If we know the dev is going away while the transport is still sending
|
||||
* IO's return busy back to stall the IO Q. This happens when the
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user