]> git.baikalelectronics.ru Git - kernel.git/commitdiff
scsi: qla2xxx: Fix link failure in NPIV environment
authorQuinn Tran <qutran@marvell.com>
Mon, 19 Dec 2022 11:07:39 +0000 (03:07 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 11 Mar 2023 15:44:05 +0000 (16:44 +0100)
commit b1ae65c082f74536ec292b15766f2846f0238373 upstream.

User experienced symptoms of adapter failure in NPIV environment. NPIV
hosts were allowed to trigger chip reset back to back due to NPIV link
state being slow to come online.

Fix link failure in NPIV environment by removing NPIV host from directly
being able to perform chip reset.

 kernel: qla2xxx [0000:04:00.1]-6009:261: Loop down - aborting ISP.
 kernel: qla2xxx [0000:04:00.1]-6009:262: Loop down - aborting ISP.
 kernel: qla2xxx [0000:04:00.1]-6009:281: Loop down - aborting ISP.
 kernel: qla2xxx [0000:04:00.1]-6009:285: Loop down - aborting ISP

Fixes: bc0b1db69db8 ("[SCSI] qla2xxx: Correct various NPIV issues.")
Cc: stable@vger.kernel.org
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/scsi/qla2xxx/qla_os.c

index a5dbaa3491f82e1da21dfc0bb1b59b3184759d31..4b9815353d76fafce9168d470009f115e9fb895d 100644 (file)
@@ -6607,7 +6607,7 @@ qla2x00_timer(struct timer_list *t)
 
                /* if the loop has been down for 4 minutes, reinit adapter */
                if (atomic_dec_and_test(&vha->loop_down_timer) != 0) {
-                       if (!(vha->device_flags & DFLG_NO_CABLE)) {
+                       if (!(vha->device_flags & DFLG_NO_CABLE) && !vha->vp_idx) {
                                ql_log(ql_log_warn, vha, 0x6009,
                                    "Loop down - aborting ISP.\n");