diff --git a/net/core/dev.c b/net/core/dev.c index e4b4cb40da00c943a838218634a2d1658aff36c7..ddd8aab20adf2518d07d8c02ac169a013477c12e 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -8562,6 +8562,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; } /*