|
@@ -2545,8 +2545,11 @@ lpfc_mbx_cmpl_fcf_rr_read_fcf_rec(struct lpfc_hba *phba, LPFC_MBOXQ_t *mboxq)
|
|
|
if (!new_fcf_record) {
|
|
|
lpfc_printf_log(phba, KERN_WARNING, LOG_FIP,
|
|
|
"2766 Mailbox command READ_FCF_RECORD "
|
|
|
- "failed to retrieve a FCF record.\n");
|
|
|
- goto error_out;
|
|
|
+ "failed to retrieve a FCF record. "
|
|
|
+ "hba_flg x%x fcf_flg x%x\n", phba->hba_flag,
|
|
|
+ phba->fcf.fcf_flag);
|
|
|
+ lpfc_unregister_fcf_rescan(phba);
|
|
|
+ goto out;
|
|
|
}
|
|
|
|
|
|
/* Get the needed parameters from FCF record */
|
|
@@ -3973,7 +3976,10 @@ lpfc_nlp_counters(struct lpfc_vport *vport, int state, int count)
|
|
|
vport->fc_map_cnt += count;
|
|
|
break;
|
|
|
case NLP_STE_NPR_NODE:
|
|
|
- vport->fc_npr_cnt += count;
|
|
|
+ if (vport->fc_npr_cnt == 0 && count == -1)
|
|
|
+ vport->fc_npr_cnt = 0;
|
|
|
+ else
|
|
|
+ vport->fc_npr_cnt += count;
|
|
|
break;
|
|
|
}
|
|
|
spin_unlock_irq(shost->host_lock);
|