[SCSI] fcoe: Fix setting lport's WWNN/WWPN to use san mac address
authorYi Zou <yi.zou@intel.com>
Tue, 3 Nov 2009 19:49:49 +0000 (11:49 -0800)
committerJames Bottomley <James.Bottomley@suse.de>
Fri, 4 Dec 2009 18:01:23 +0000 (12:01 -0600)
We are still using netdev->dev_addr to generate lport's WWNN/WWPN even if the
LLD has support for NETDEV_HW_ADDR_T_SAN. Instead, we should just use the
fip->ctl_src_addr, which is the NETDEV_HW_ADDR_T_SAN if LLD supports it or it
is just the netdev->dev_addr if it does not.

Signed-off-by: Yi Zou <yi.zou@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/scsi/fcoe/fcoe.c

index c1fd7561f0bd8abc0e7e7679af9b114a053ea75f..fba7ba00c71bbcd0b53e0ca328a02ed0c8ce8337 100644 (file)
@@ -599,10 +599,10 @@ static int fcoe_netdev_config(struct fc_lport *lport, struct net_device *netdev)
        setup_timer(&port->timer, fcoe_queue_timer, (unsigned long)lport);
 
        if (!lport->vport) {
-               wwnn = fcoe_wwn_from_mac(netdev->dev_addr, 1, 0);
+               wwnn = fcoe_wwn_from_mac(fcoe->ctlr.ctl_src_addr, 1, 0);
                fc_set_wwnn(lport, wwnn);
                /* XXX - 3rd arg needs to be vlan id */
-               wwpn = fcoe_wwn_from_mac(netdev->dev_addr, 2, 0);
+               wwpn = fcoe_wwn_from_mac(fcoe->ctlr.ctl_src_addr, 2, 0);
                fc_set_wwpn(lport, wwpn);
        }