]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commit
scsi: lpfc: Change return code on I/Os received during link bounce
authorJames Smart <jsmart2021@gmail.com>
Tue, 8 Feb 2022 14:20:09 +0000 (09:20 -0500)
committerPaolo Pisati <paolo.pisati@canonical.com>
Fri, 11 Feb 2022 11:11:42 +0000 (12:11 +0100)
commitdc2dc2731ea5a75bcac6bf264525f37a2178cdf2
treeab76d97415b5c250647049e3fb0048078eceb6c7
parentac3232e97f0be632b429d6caa85b33c6ddc8354e
scsi: lpfc: Change return code on I/Os received during link bounce

BugLink: https://bugs.launchpad.net/bugs/1956982
During heavy I/O testing with issue_lip to bounce the link, occasionally
I/O is terminated with status 3 result 9, which means the RPI is suspended.
The I/O is completed and this type of error will result in immediate retry
by the SCSI layer. The retry count expires and the I/O fails and returns
error to the application.

To avoid these quick retry/retries exhausted scenarios change the return
code given to the midlayer to DID_REQUEUE rather than DID_ERROR. This gets
them retried, and eventually succeed when the link recovers.

Link: https://lore.kernel.org/r/20211204002644.116455-3-jsmart2021@gmail.com
Co-developed-by: Justin Tee <justin.tee@broadcom.com>
Signed-off-by: Justin Tee <justin.tee@broadcom.com>
Signed-off-by: James Smart <jsmart2021@gmail.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
(cherry picked from commit 2e81b1a374da5d6024208c16c4a5224a70cafa64)
Signed-off-by: Jeff Lane <jeffrey.lane@canonical.com>
Acked-by: Tim Gardner <tim.gardner@canonical.com>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
Signed-off-by: Paolo Pisati <paolo.pisati@canonical.com>
drivers/scsi/lpfc/lpfc_hw.h
drivers/scsi/lpfc/lpfc_scsi.c