From c827f5a07d360e2af0416bac9234d7fc49278259 Mon Sep 17 00:00:00 2001 From: James Smart Date: Wed, 9 May 2012 21:18:49 -0400 Subject: [PATCH] --- yaml --- r: 302529 b: refs/heads/master c: 27aa1b73539f2c7118a68c9baaad590d3a92462f h: refs/heads/master i: 302527: b4fe7427662f4b17b968c2243b3df51a2361d1db v: v3 --- [refs] | 2 +- trunk/drivers/scsi/lpfc/lpfc_els.c | 13 ++++++++----- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 6873bfe4e81f..77928d99144a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 75ad83a452116c00c092bdc4c842c4401cd24080 +refs/heads/master: 27aa1b73539f2c7118a68c9baaad590d3a92462f diff --git a/trunk/drivers/scsi/lpfc/lpfc_els.c b/trunk/drivers/scsi/lpfc/lpfc_els.c index 2ecd719cc2aa..95cff9909eff 100644 --- a/trunk/drivers/scsi/lpfc/lpfc_els.c +++ b/trunk/drivers/scsi/lpfc/lpfc_els.c @@ -707,14 +707,17 @@ lpfc_cmpl_els_flogi_fabric(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp, lpfc_sli4_unreg_all_rpis(vport); lpfc_mbx_unreg_vpi(vport); spin_lock_irq(shost->host_lock); - vport->fc_flag |= FC_VPORT_NEEDS_REG_VPI; - /* - * If VPI is unreged, driver need to do INIT_VPI - * before re-registering - */ vport->fc_flag |= FC_VPORT_NEEDS_INIT_VPI; spin_unlock_irq(shost->host_lock); } + + /* + * For SLI3 and SLI4, the VPI needs to be reregistered in + * response to this fabric parameter change event. + */ + spin_lock_irq(shost->host_lock); + vport->fc_flag |= FC_VPORT_NEEDS_REG_VPI; + spin_unlock_irq(shost->host_lock); } else if ((phba->sli_rev == LPFC_SLI_REV4) && !(vport->fc_flag & FC_VPORT_NEEDS_REG_VPI)) { /*