diff options
author | Eric Dumazet <edumazet@google.com> | 2017-09-20 01:27:08 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-09-20 01:32:23 +0200 |
commit | bb401caefe9d2c65e0c0fa23b21deecfbfa473fe (patch) | |
tree | 265825e512645729790e0f932b82c9b09ff7fa08 /net/ipv4/ip_vti.c | |
parent | tcp: batch tcp_net_metrics_exit (diff) | |
download | linux-bb401caefe9d2c65e0c0fa23b21deecfbfa473fe.tar.xz linux-bb401caefe9d2c65e0c0fa23b21deecfbfa473fe.zip |
ipv6: speedup ipv6 tunnels dismantle
Implement exit_batch() method to dismantle more devices
per round.
(rtnl_lock() ...
unregister_netdevice_many() ...
rtnl_unlock())
Tested:
$ cat add_del_unshare.sh
for i in `seq 1 40`
do
(for j in `seq 1 100` ; do unshare -n /bin/true >/dev/null ; done) &
done
wait ; grep net_namespace /proc/slabinfo
Before patch :
$ time ./add_del_unshare.sh
net_namespace 110 267 5504 1 2 : tunables 8 4 0 : slabdata 110 267 0
real 3m25.292s
user 0m0.644s
sys 0m40.153s
After patch:
$ time ./add_del_unshare.sh
net_namespace 126 282 5504 1 2 : tunables 8 4 0 : slabdata 126 282 0
real 1m38.965s
user 0m0.688s
sys 0m37.017s
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/ipv4/ip_vti.c')
0 files changed, 0 insertions, 0 deletions