netvsc: force link update after MTU change
authorstephen hemminger <stephen@networkplumber.org>
Wed, 19 Jul 2017 18:53:12 +0000 (11:53 -0700)
committerDavid S. Miller <davem@davemloft.net>
Thu, 20 Jul 2017 05:20:05 +0000 (22:20 -0700)
If two MTU changes are in less than update interval (2 seconds),
then the netvsc network device may get stuck with no carrier.

The netvsc driver debounces link status events which is fine
for unsolicited updates, but blocks getting the update after
down/up from MTU reinitialization.

Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/hyperv/netvsc_drv.c

index 63c98bbbc596dbe11cc74ba71c384da02c5d763b..09b07ca9e69a41eae216a8869ed847b1d7aab3de 100644 (file)
@@ -783,6 +783,7 @@ static int netvsc_set_channels(struct net_device *net,
                ret = netvsc_open(net);
 
        /* We may have missed link change notifications */
+       net_device_ctx->last_reconfig = 0;
        schedule_delayed_work(&net_device_ctx->dwork, 0);
 
        return ret;