diff mbox series

[02/10] qla2xxx: Fix link failure in NPIV environment

Message ID 20221214045014.19362-3-njavali@marvell.com
State Superseded
Headers show
Series Misc. qla2xxx driver bug fixes | expand

Commit Message

Nilesh Javali Dec. 14, 2022, 4:50 a.m. UTC
From: Quinn Tran <qutran@marvell.com>

User experience symptoms of adapter failure in NPIV
environment. NPIV hosts were allowed to trigger
chip reset back to back due to NPIV link state was
slow to become 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: 0d6e61bc6a4f ("[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>
---
 drivers/scsi/qla2xxx/qla_os.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Himanshu Madhani Dec. 15, 2022, 4:56 p.m. UTC | #1
> On Dec 13, 2022, at 8:50 PM, Nilesh Javali <njavali@marvell.com> wrote:
> 
> From: Quinn Tran <qutran@marvell.com>
> 
> User experience symptoms of adapter failure in NPIV
> environment. NPIV hosts were allowed to trigger
> chip reset back to back due to NPIV link state was
> slow to become 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: 0d6e61bc6a4f ("[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>
> ---
> drivers/scsi/qla2xxx/qla_os.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
> index 96ba1398f20c..1fc4e6209db7 100644
> --- a/drivers/scsi/qla2xxx/qla_os.c
> +++ b/drivers/scsi/qla2xxx/qla_os.c
> @@ -7448,7 +7448,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");
> 
> -- 
> 2.19.0.rc0
> 

Looks Good. 

Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
diff mbox series

Patch

diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index 96ba1398f20c..1fc4e6209db7 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -7448,7 +7448,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");