Skip to contentSkip to conversation

lpfc 8.3.35: Fixed PRLI not being retried if a LS_RJT with a reason

PATCH New James Smart 1 participant 1 message Sep 29, 2012

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 9/16 lpfc 8.3.35: Fixed PRLI not being retried if a LS_RJT with a reason

Fixed PRLI not being retried if a LS_RJT with a reason

---

 lpfc_els.c |    5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)
drivers/scsi/lpfc/lpfc_els.c +3 -2
diff -upNr a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c
@@ -3160,7 +3160,8 @@ lpfc_els_retry(struct lpfc_hba *phba, st
 				retry = 1;
 				break;
 			}
-			if (cmd == ELS_CMD_PLOGI) {
+			if ((cmd == ELS_CMD_PLOGI) ||
+			    (cmd == ELS_CMD_PRLI)) {
 				delay = 1000;
 				maxretry = lpfc_max_els_tries + 1;
 				retry = 1;
@@ -3305,7 +3306,7 @@ lpfc_els_retry(struct lpfc_hba *phba, st
 			ndlp->nlp_prev_state = ndlp->nlp_state;
 			if (cmd == ELS_CMD_PRLI)
 				lpfc_nlp_set_state(vport, ndlp,
-					NLP_STE_REG_LOGIN_ISSUE);
+					NLP_STE_PRLI_ISSUE);
 			else
 				lpfc_nlp_set_state(vport, ndlp,
 					NLP_STE_NPR_NODE);