Commit 76395c88 authored by James Smart's avatar James Smart Committed by Martin K. Petersen
Browse files

scsi: lpfc: Transition to NPR state upon LOGO cmpl if link down or aborted

In P2P topology, a target controller reboot sometimes results in not
reestablishing a login because the ndlp is stuck in LOGO state.

Fix by transitioning to NPR state if we get link down before LOGO
completes.

Link: https://lore.kernel.org/r/20220412222008.126521-12-jsmart2021@gmail.com


Co-developed-by: default avatarJustin Tee <justin.tee@broadcom.com>
Signed-off-by: default avatarJustin Tee <justin.tee@broadcom.com>
Signed-off-by: default avatarJames Smart <jsmart2021@gmail.com>
Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
parent 31e88786
Loading
Loading
Loading
Loading
+3 −0
Original line number Diff line number Diff line
@@ -3007,7 +3007,10 @@ lpfc_cmpl_els_logo(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb,
				 ndlp->nlp_DID, ulp_status,
				 ulp_word4);

		/* Call NLP_EVT_DEVICE_RM if link is down or LOGO is aborted */
		if (lpfc_error_lost_link(ulp_status, ulp_word4)) {
			lpfc_disc_state_machine(vport, ndlp, cmdiocb,
						NLP_EVT_DEVICE_RM);
			skip_recovery = 1;
			goto out;
		}