|
@@ -7968,7 +7968,8 @@ lpfc_els_unsol_buffer(struct lpfc_hba *phba, struct lpfc_sli_ring *pring,
|
|
did, vport->port_state, ndlp->nlp_flag);
|
|
did, vport->port_state, ndlp->nlp_flag);
|
|
|
|
|
|
phba->fc_stat.elsRcvPRLI++;
|
|
phba->fc_stat.elsRcvPRLI++;
|
|
- if (vport->port_state < LPFC_DISC_AUTH) {
|
|
|
|
|
|
+ if ((vport->port_state < LPFC_DISC_AUTH) &&
|
|
|
|
+ (vport->fc_flag & FC_FABRIC)) {
|
|
rjt_err = LSRJT_UNABLE_TPC;
|
|
rjt_err = LSRJT_UNABLE_TPC;
|
|
rjt_exp = LSEXP_NOTHING_MORE;
|
|
rjt_exp = LSEXP_NOTHING_MORE;
|
|
break;
|
|
break;
|