aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc/lpfc_els.c
diff options
context:
space:
mode:
authorJames Smart <james.smart@emulex.com>2012-09-29 11:31:11 -0400
committerJames Bottomley <JBottomley@Parallels.com>2012-10-08 07:03:43 -0400
commit4c1b64bad4755e66c649c89653dadb0206c7b30a (patch)
tree2a8e24c7bb31cc12e96110b5a383c48072c0e9d4 /drivers/scsi/lpfc/lpfc_els.c
parentce3962829d750fd64ff1317e8b82134f1f152eeb (diff)
[SCSI] lpfc 8.3.35: Fixed PRLI not being retried if a LS_RJT with a reason
Signed-off-by: James Smart <james.smart@emulex.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_els.c')
-rw-r--r--drivers/scsi/lpfc/lpfc_els.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c
index cfe533bc9790..c23f6415f76d 100644
--- 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, struct lpfc_iocbq *cmdiocb,
3160 retry = 1; 3160 retry = 1;
3161 break; 3161 break;
3162 } 3162 }
3163 if (cmd == ELS_CMD_PLOGI) { 3163 if ((cmd == ELS_CMD_PLOGI) ||
3164 (cmd == ELS_CMD_PRLI)) {
3164 delay = 1000; 3165 delay = 1000;
3165 maxretry = lpfc_max_els_tries + 1; 3166 maxretry = lpfc_max_els_tries + 1;
3166 retry = 1; 3167 retry = 1;
@@ -3305,7 +3306,7 @@ lpfc_els_retry(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb,
3305 ndlp->nlp_prev_state = ndlp->nlp_state; 3306 ndlp->nlp_prev_state = ndlp->nlp_state;
3306 if (cmd == ELS_CMD_PRLI) 3307 if (cmd == ELS_CMD_PRLI)
3307 lpfc_nlp_set_state(vport, ndlp, 3308 lpfc_nlp_set_state(vport, ndlp,
3308 NLP_STE_REG_LOGIN_ISSUE); 3309 NLP_STE_PRLI_ISSUE);
3309 else 3310 else
3310 lpfc_nlp_set_state(vport, ndlp, 3311 lpfc_nlp_set_state(vport, ndlp,
3311 NLP_STE_NPR_NODE); 3312 NLP_STE_NPR_NODE);