diff --git a/net/core/dev.c b/net/core/dev.c index 152e1e6316e6..18a5154e2f25 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -6837,6 +6837,8 @@ int register_netdevice(struct net_device *dev) ret = notifier_to_errno(ret); if (ret) { rollback_registered(dev); + rcu_barrier(); + dev->reg_state = NETREG_UNREGISTERED; } /*