diff options
author | Lijun Pan <ljp@linux.ibm.com> | 2020-12-14 15:19:30 -0600 |
---|---|---|
committer | Jakub Kicinski <kuba@kernel.org> | 2020-12-16 11:43:26 -0800 |
commit | 935d8a0a43e3f928e3243ae22bc53cd7a014d515 (patch) | |
tree | dad6c05bbe3b456011d2088eeec8bf716f3f6ee0 /drivers/net | |
parent | 6be4666221cafcfd58cc078aa8bd1ba11b699f6b (diff) | |
download | linux-stable-935d8a0a43e3f928e3243ae22bc53cd7a014d515.tar.gz linux-stable-935d8a0a43e3f928e3243ae22bc53cd7a014d515.tar.bz2 linux-stable-935d8a0a43e3f928e3243ae22bc53cd7a014d515.zip |
use __netdev_notify_peers in hyperv
Start to use the lockless version of netdev_notify_peers.
Call the helper where notify variable used to be set true.
Remove the notify bool variable and sort the variables
in reverse Christmas tree order.
Cc: Haiyang Zhang <haiyangz@microsoft.com>
Signed-off-by: Lijun Pan <ljp@linux.ibm.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/hyperv/netvsc_drv.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c index d17bbc75f5e7..f32f28311d57 100644 --- a/drivers/net/hyperv/netvsc_drv.c +++ b/drivers/net/hyperv/netvsc_drv.c @@ -2050,11 +2050,11 @@ static void netvsc_link_change(struct work_struct *w) container_of(w, struct net_device_context, dwork.work); struct hv_device *device_obj = ndev_ctx->device_ctx; struct net_device *net = hv_get_drvdata(device_obj); + unsigned long flags, next_reconfig, delay; + struct netvsc_reconfig *event = NULL; struct netvsc_device *net_device; struct rndis_device *rdev; - struct netvsc_reconfig *event = NULL; - bool notify = false, reschedule = false; - unsigned long flags, next_reconfig, delay; + bool reschedule = false; /* if changes are happening, comeback later */ if (!rtnl_trylock()) { @@ -2103,7 +2103,7 @@ static void netvsc_link_change(struct work_struct *w) netif_carrier_on(net); netvsc_tx_enable(net_device, net); } else { - notify = true; + __netdev_notify_peers(net); } kfree(event); break; @@ -2132,9 +2132,6 @@ static void netvsc_link_change(struct work_struct *w) rtnl_unlock(); - if (notify) - netdev_notify_peers(net); - /* link_watch only sends one notification with current state per * second, handle next reconfig event in 2 seconds. */ |