OSDN Git Service

ixgbevf: fix MAC address changes through ixgbevf_set_mac()
authorEmil Tantilov <emil.s.tantilov@intel.com>
Mon, 14 May 2018 18:16:16 +0000 (11:16 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Thu, 17 May 2018 16:07:37 +0000 (09:07 -0700)
Set hw->mac.perm_addr in ixgbevf_set_mac() in order to avoid losing the
custom MAC on reset. This can happen in the following case:

>ip link set $vf address $mac
>ethtool -r $vf

Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c

index 9a939dc..0830411 100644 (file)
@@ -4164,6 +4164,7 @@ static int ixgbevf_set_mac(struct net_device *netdev, void *p)
                return -EPERM;
 
        ether_addr_copy(hw->mac.addr, addr->sa_data);
+       ether_addr_copy(hw->mac.perm_addr, addr->sa_data);
        ether_addr_copy(netdev->dev_addr, addr->sa_data);
 
        return 0;