Merge branch 'netns-speedup-dismantle'
authorDavid S. Miller <davem@davemloft.net>
Tue, 25 Jan 2022 11:25:22 +0000 (11:25 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 25 Jan 2022 11:25:22 +0000 (11:25 +0000)
commit51d555cfdcc60436850f75daa6e379ba08e7a68c
treef989ea5f702b3dadd7d38739768d443129534913
parent8a0de61c40af634ce08458ae088b40c1103ee1ad
parent37ba017dcc3b1123206808979834655ddcf93251
Merge branch 'netns-speedup-dismantle'

Eric Dumazet says:

====================
netns: speedup netns dismantles

netns are dismantled by a single thread, from cleanup_net()

On hosts with many TCP sockets, and/or many cpus, this thread
is spending too many cpu cycles, and can not keep up with some
workloads.

- Removing 3*num_possible_cpus() sockets per netns, for icmp and tcp protocols.
- Iterating over all TCP sockets to remove stale timewait sockets.

This patch series removes ~50% of cleanup_net() cpu costs on
hosts with 256 cpus. It also reduces per netns memory footprint.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>