diff options
author | Eric Dumazet <edumazet@google.com> | 2022-01-24 21:24:55 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2022-01-25 12:25:21 +0100 |
commit | a15c89c703d43490ea68ea4516553d4ea4f6b1e1 (patch) | |
tree | dff2f3378a0fadd25de420192817717b86d064f2 /include/net/netns | |
parent | tcp/dccp: get rid of inet_twsk_purge() (diff) | |
download | linux-a15c89c703d43490ea68ea4516553d4ea4f6b1e1.tar.xz linux-a15c89c703d43490ea68ea4516553d4ea4f6b1e1.zip |
ipv4: do not use per netns icmp sockets
Back in linux-2.6.25 (commit 4a6ad7a141cb "[NETNS]: Make icmp_sk per namespace."),
we added private per-cpu/per-netns ipv4 icmp sockets.
This adds memory and cpu costs, which do not seem needed.
Now typical servers have 256 or more cores, this adds considerable
tax to netns users.
icmp sockets are used from BH context, are not receiving packets,
and do not store any persistent state but the 'struct net' pointer.
icmp_xmit_lock() already makes sure to lock the chosen per-cpu
socket.
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/netns')
-rw-r--r-- | include/net/netns/ipv4.h | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/include/net/netns/ipv4.h b/include/net/netns/ipv4.h index 78557643526e..639a31638159 100644 --- a/include/net/netns/ipv4.h +++ b/include/net/netns/ipv4.h @@ -70,7 +70,6 @@ struct netns_ipv4 { struct hlist_head *fib_table_hash; struct sock *fibnl; - struct sock * __percpu *icmp_sk; struct sock *mc_autojoin_sk; struct inet_peer_base *peers; |