Blob Blame History Raw
From: James Smart <jsmart2021@gmail.com>
Date: Tue, 12 Apr 2022 15:19:49 -0700
Subject: scsi: lpfc: Clear fabric topology flag before initiating a new FLOGI
Patch-mainline: v5.19-rc1
Git-commit: 3483a44bdfb475432081a27b38ea7fb8305814af
References: bsc#1200045

Previous topologies may no longer be in fabric mode, so clear FC_FABRIC in
fc_flag for every new FLOGI.

Link: https://lore.kernel.org/r/20220412222008.126521-8-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>
Acked-by: Daniel Wagner <dwagner@suse.de>
---
 drivers/scsi/lpfc/lpfc_els.c |    2 ++
 1 file changed, 2 insertions(+)

--- a/drivers/scsi/lpfc/lpfc_els.c
+++ b/drivers/scsi/lpfc/lpfc_els.c
@@ -1531,6 +1531,8 @@ lpfc_initial_flogi(struct lpfc_vport *vp
 		lpfc_enqueue_node(vport, ndlp);
 	}
 
+	/* Reset the Fabric flag, topology change may have happened */
+	vport->fc_flag &= ~FC_FABRIC;
 	if (lpfc_issue_els_flogi(vport, ndlp, 0)) {
 		/* This decrement of reference count to node shall kick off
 		 * the release of the node.