lkml.org 
[lkml]   [2010]   [Jan]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[53/98] [SCSI] fcoe: Fix getting san mac for VLAN interface
    2.6.32-stable review patch.  If anyone has any objections, please let us know.

    ------------------

    From: Yi Zou <yi.zou@intel.com>

    commit 5bab87e6d465d54a2b5899e0f583d42f00dbee2e upstream.

    Make sure we are get the SAN MAC address from the real netdev if the input
    netdev is a VLAN device.

    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>
    Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>

    ---
    drivers/scsi/fcoe/fcoe.c | 5 ++++-
    1 file changed, 4 insertions(+), 1 deletion(-)

    --- a/drivers/scsi/fcoe/fcoe.c
    +++ b/drivers/scsi/fcoe/fcoe.c
    @@ -160,6 +160,7 @@ static int fcoe_interface_setup(struct f
    {
    struct fcoe_ctlr *fip = &fcoe->ctlr;
    struct netdev_hw_addr *ha;
    + struct net_device *real_dev;
    u8 flogi_maddr[ETH_ALEN];

    fcoe->netdev = netdev;
    @@ -173,8 +174,10 @@ static int fcoe_interface_setup(struct f

    /* look for SAN MAC address, if multiple SAN MACs exist, only
    * use the first one for SPMA */
    + real_dev = (netdev->priv_flags & IFF_802_1Q_VLAN) ?
    + vlan_dev_real_dev(netdev) : netdev;
    rcu_read_lock();
    - for_each_dev_addr(netdev, ha) {
    + for_each_dev_addr(real_dev, ha) {
    if ((ha->type == NETDEV_HW_ADDR_T_SAN) &&
    (is_valid_ether_addr(ha->addr))) {
    memcpy(fip->ctl_src_addr, ha->addr, ETH_ALEN);



    \
     
     \ /
      Last update: 2010-01-27 00:59    [W:0.024 / U:1.360 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site