aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc/lpfc_hbadisc.c
diff options
context:
space:
mode:
authorJames Smart <james.smart@emulex.com>2013-04-17 20:20:00 -0400
committerJames Bottomley <JBottomley@Parallels.com>2013-05-02 16:14:43 -0400
commit6fa139f300070081236538cdc3440f9cd7b6b18e (patch)
tree6eb8c45b1d1066eef7008b3ce6edac292176b979 /drivers/scsi/lpfc/lpfc_hbadisc.c
parent88f43a08672381fa46ed9a82320023408d99a62b (diff)
[SCSI] lpfc 8.3.39: Fixed driver handling of CLEAR_LA with NPIV enabled causing SID=0 frames out
Signed-off-by: James Smart <james.smart@emulex.com> Signed-off-by: James Bottomley <JBottomley@Parallels.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_hbadisc.c')
-rw-r--r--drivers/scsi/lpfc/lpfc_hbadisc.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/scsi/lpfc/lpfc_hbadisc.c b/drivers/scsi/lpfc/lpfc_hbadisc.c
index 58379ffa97b8..0f6e2548f35d 100644
--- a/drivers/scsi/lpfc/lpfc_hbadisc.c
+++ b/drivers/scsi/lpfc/lpfc_hbadisc.c
@@ -1009,9 +1009,6 @@ lpfc_linkup(struct lpfc_hba *phba)
1009 for (i = 0; i <= phba->max_vports && vports[i] != NULL; i++) 1009 for (i = 0; i <= phba->max_vports && vports[i] != NULL; i++)
1010 lpfc_linkup_port(vports[i]); 1010 lpfc_linkup_port(vports[i]);
1011 lpfc_destroy_vport_work_array(phba, vports); 1011 lpfc_destroy_vport_work_array(phba, vports);
1012 if ((phba->sli3_options & LPFC_SLI3_NPIV_ENABLED) &&
1013 (phba->sli_rev < LPFC_SLI_REV4))
1014 lpfc_issue_clear_la(phba, phba->pport);
1015 1012
1016 return 0; 1013 return 0;
1017} 1014}
@@ -5028,11 +5025,13 @@ lpfc_disc_start(struct lpfc_vport *vport)
5028 if (num_sent) 5025 if (num_sent)
5029 return; 5026 return;
5030 5027
5031 /* Register the VPI for SLI3, NON-NPIV only. */ 5028 /* Register the VPI for SLI3, NPIV only. */
5032 if ((phba->sli3_options & LPFC_SLI3_NPIV_ENABLED) && 5029 if ((phba->sli3_options & LPFC_SLI3_NPIV_ENABLED) &&
5033 !(vport->fc_flag & FC_PT2PT) && 5030 !(vport->fc_flag & FC_PT2PT) &&
5034 !(vport->fc_flag & FC_RSCN_MODE) && 5031 !(vport->fc_flag & FC_RSCN_MODE) &&
5035 (phba->sli_rev < LPFC_SLI_REV4)) { 5032 (phba->sli_rev < LPFC_SLI_REV4)) {
5033 if (vport->port_type == LPFC_PHYSICAL_PORT)
5034 lpfc_issue_clear_la(phba, vport);
5036 lpfc_issue_reg_vpi(phba, vport); 5035 lpfc_issue_reg_vpi(phba, vport);
5037 return; 5036 return;
5038 } 5037 }