aboutsummaryrefslogtreecommitdiffstats
path: root/net/ipv4/fib_frontend.c
diff options
context:
space:
mode:
authorEric W. Biederman <ebiederm@xmission.com>2009-11-29 10:45:58 -0500
committerDavid S. Miller <davem@davemloft.net>2009-12-01 19:15:50 -0500
commita5ee155136b4a8f4ab0e4c9c064b661da475e298 (patch)
tree10c113756ff0dcc860735d96ed141701bffa3476 /net/ipv4/fib_frontend.c
parent5a5b6f6f62ac684a5856121d8cffd3c3253dc890 (diff)
net: NETDEV_UNREGISTER_PERNET -> NETDEV_UNREGISTER_BATCH
The motivation for an additional notifier in batched netdevice notification (rt_do_flush) only needs to be called once per batch not once per namespace. For further batching improvements I need a guarantee that the netdevices are unregistered in order allowing me to unregister an all of the network devices in a network namespace at the same time with the guarantee that the loopback device is really and truly unregistered last. Additionally it appears that we moved the route cache flush after the final synchronize_net, which seems wrong and there was no explanation. So I have restored the original location of the final synchronize_net. Cc: Octavian Purdila <opurdila@ixiacom.com> Signed-off-by: Eric W. Biederman <ebiederm@xmission.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/fib_frontend.c')
-rw-r--r--net/ipv4/fib_frontend.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/net/ipv4/fib_frontend.c b/net/ipv4/fib_frontend.c
index 6c1e56aef1f4..3b373a8b0473 100644
--- a/net/ipv4/fib_frontend.c
+++ b/net/ipv4/fib_frontend.c
@@ -959,9 +959,11 @@ static int fib_netdev_event(struct notifier_block *this, unsigned long event, vo
959 break; 959 break;
960 case NETDEV_CHANGEMTU: 960 case NETDEV_CHANGEMTU:
961 case NETDEV_CHANGE: 961 case NETDEV_CHANGE:
962 case NETDEV_UNREGISTER_PERNET:
963 rt_cache_flush(dev_net(dev), 0); 962 rt_cache_flush(dev_net(dev), 0);
964 break; 963 break;
964 case NETDEV_UNREGISTER_BATCH:
965 rt_cache_flush_batch();
966 break;
965 } 967 }
966 return NOTIFY_DONE; 968 return NOTIFY_DONE;
967} 969}