diff options
Diffstat (limited to 'net/core/dev.c')
-rw-r--r-- | net/core/dev.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index e25fe5d9343b..c128af708ebf 100644 --- a/net/core/dev.c +++ b/net/core/dev.c | |||
@@ -5085,6 +5085,8 @@ static void netdev_wait_allrefs(struct net_device *dev) | |||
5085 | { | 5085 | { |
5086 | unsigned long rebroadcast_time, warning_time; | 5086 | unsigned long rebroadcast_time, warning_time; |
5087 | 5087 | ||
5088 | linkwatch_forget_dev(dev); | ||
5089 | |||
5088 | rebroadcast_time = warning_time = jiffies; | 5090 | rebroadcast_time = warning_time = jiffies; |
5089 | while (atomic_read(&dev->refcnt) != 0) { | 5091 | while (atomic_read(&dev->refcnt) != 0) { |
5090 | if (time_after(jiffies, rebroadcast_time + 1 * HZ)) { | 5092 | if (time_after(jiffies, rebroadcast_time + 1 * HZ)) { |
@@ -5311,6 +5313,7 @@ struct net_device *alloc_netdev_mq(int sizeof_priv, const char *name, | |||
5311 | 5313 | ||
5312 | INIT_LIST_HEAD(&dev->napi_list); | 5314 | INIT_LIST_HEAD(&dev->napi_list); |
5313 | INIT_LIST_HEAD(&dev->unreg_list); | 5315 | INIT_LIST_HEAD(&dev->unreg_list); |
5316 | INIT_LIST_HEAD(&dev->link_watch_list); | ||
5314 | dev->priv_flags = IFF_XMIT_DST_RELEASE; | 5317 | dev->priv_flags = IFF_XMIT_DST_RELEASE; |
5315 | setup(dev); | 5318 | setup(dev); |
5316 | strcpy(dev->name, name); | 5319 | strcpy(dev->name, name); |