From: Vaios Papadimitriou Date: Tue, 28 Aug 2012 22:46:46 +0000 (-0700) Subject: scsi/lpfc: Reregister VPI for SLI3 after cable moved to new 8Gb FC Adapter port X-Git-Tag: v2.6.39-400.9.0~314^2~33 X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=ee0cfc9bd04d49ce53b2e64409b43049bb514549;p=users%2Fjedix%2Flinux-maple.git scsi/lpfc: Reregister VPI for SLI3 after cable moved to new 8Gb FC Adapter port commit id: 27aa1b73539f2c7118a68c9baaad590d3a92462f Signed-off-by: Jerry Snitselaar --- diff --git a/drivers/scsi/lpfc/lpfc_els.c b/drivers/scsi/lpfc/lpfc_els.c index 591ec56c7160..3eeddabc3630 100644 --- a/drivers/scsi/lpfc/lpfc_els.c +++ b/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)) { /*