mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-14 15:54:15 +08:00
lpfc: Fix discovery issue when changing from Pt2Pt to Fabric.
Signed-off-by: Dick Kennedy <dick.kennedy@avagotech.com> Signed-off-by: James Smart <james.smart@avagotech.com> Reviewed-by: Hannes Reinecke <hare@suse.de> Signed-off-by: James Bottomley <JBottomley@Odin.com>
This commit is contained in:
parent
c84163d179
commit
6b337e032c
@ -4834,9 +4834,19 @@ lpfc_matchdid(struct lpfc_vport *vport, struct lpfc_nodelist *ndlp,
|
||||
if (matchdid.un.b.id == ndlpdid.un.b.id) {
|
||||
if ((mydid.un.b.domain == matchdid.un.b.domain) &&
|
||||
(mydid.un.b.area == matchdid.un.b.area)) {
|
||||
/* This code is supposed to match the ID
|
||||
* for a private loop device that is
|
||||
* connect to fl_port. But we need to
|
||||
* check that the port did not just go
|
||||
* from pt2pt to fabric or we could end
|
||||
* up matching ndlp->nlp_DID 000001 to
|
||||
* fabric DID 0x20101
|
||||
*/
|
||||
if ((ndlpdid.un.b.domain == 0) &&
|
||||
(ndlpdid.un.b.area == 0)) {
|
||||
if (ndlpdid.un.b.id)
|
||||
if (ndlpdid.un.b.id &&
|
||||
vport->phba->fc_topology ==
|
||||
LPFC_TOPOLOGY_LOOP)
|
||||
return 1;
|
||||
}
|
||||
return 0;
|
||||
|
Loading…
Reference in New Issue
Block a user