diff options
| author | David S. Miller <davem@nuts.davemloft.net> | 2004-06-16 22:11:42 -0700 |
|---|---|---|
| committer | David S. Miller <davem@nuts.davemloft.net> | 2004-06-16 22:11:42 -0700 |
| commit | d2a2fd166e421b44fec5aaf054639cdd134e332a (patch) | |
| tree | 7c014783f6e3cd98c3a5c112e56560fca69866b9 | |
| parent | 4c45b4df98b2cd48fb455a2de3ac006e100fe793 (diff) | |
[NET]: In unregister_netdevice(), do synchronize_net() before final dev_put().
This way we make sure that all destination cache updates
to remove references to this device are seen by entire
system before final destruction of the device.
| -rw-r--r-- | net/core/dev.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index fb20e1047f27..27cbb530b95b 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -3177,6 +3177,8 @@ int unregister_netdevice(struct net_device *dev) /* Finish processing unregister after unlock */ net_set_todo(dev); + synchronize_net(); + dev_put(dev); return 0; } |
