inet: frags: delay fqdir_free_fn()
authorEric Dumazet <edumazet@google.com>
Thu, 4 Apr 2024 13:07:51 +0000 (13:07 +0000)
committerDavid S. Miller <davem@davemloft.net>
Mon, 8 Apr 2024 09:59:56 +0000 (10:59 +0100)
commit802e12ff9cbff3bafb0b6f0fe79cff04dce9de16
tree29d19f658e942a58997379d915937b5d6c99400a
parentb2c919c108abda11ebf16c4e31cf687a4db95a6f
inet: frags: delay fqdir_free_fn()

fqdir_free_fn() is using very expensive rcu_barrier()

When one netns is dismantled, we often call fqdir_exit()
multiple times, typically lauching fqdir_free_fn() twice.

Delaying by one second fqdir_free_fn() helps to reduce
the number of rcu_barrier() calls, and lock contention
on rcu_state.barrier_mutex.

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/inet_fragment.c