diff options
Diffstat (limited to 'drivers/net/hyperv/netvsc_drv.c')
-rw-r--r-- | drivers/net/hyperv/netvsc_drv.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c index 382bebc2420d..7e66ae1d2a59 100644 --- a/drivers/net/hyperv/netvsc_drv.c +++ b/drivers/net/hyperv/netvsc_drv.c @@ -803,6 +803,7 @@ void netvsc_linkstatus_callback(struct net_device *net, schedule_delayed_work(&ndev_ctx->dwork, 0); } +/* This function should only be called after skb_record_rx_queue() */ static void netvsc_xdp_xmit(struct sk_buff *skb, struct net_device *ndev) { int rc; @@ -2536,7 +2537,7 @@ static int netvsc_probe(struct hv_device *dev, goto rndis_failed; } - memcpy(net->dev_addr, device_info->mac_adr, ETH_ALEN); + eth_hw_addr_set(net, device_info->mac_adr); /* We must get rtnl lock before scheduling nvdev->subchan_work, * otherwise netvsc_subchan_work() can get rtnl lock first and wait @@ -2742,8 +2743,7 @@ static int netvsc_netdev_event(struct notifier_block *this, return NOTIFY_DONE; /* Avoid Bonding master dev with same MAC registering as VF */ - if ((event_dev->priv_flags & IFF_BONDING) && - (event_dev->flags & IFF_MASTER)) + if (netif_is_bond_master(event_dev)) return NOTIFY_DONE; switch (event) { |