提交 6b337e03 编写于 作者: J James Smart 提交者: James Bottomley

lpfc: Fix discovery issue when changing from Pt2Pt to Fabric.

Signed-off-by: NDick Kennedy <dick.kennedy@avagotech.com>
Signed-off-by: NJames Smart <james.smart@avagotech.com>
Reviewed-by: NHannes Reinecke <hare@suse.de>
Signed-off-by: NJames Bottomley <JBottomley@Odin.com>
上级 c84163d1
......@@ -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;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册