Merge branch 'mptcp-refactor-token-container'
authorDavid S. Miller <davem@davemloft.net>
Fri, 26 Jun 2020 23:21:39 +0000 (16:21 -0700)
committerDavid S. Miller <davem@davemloft.net>
Fri, 26 Jun 2020 23:21:39 +0000 (16:21 -0700)
commite562d0868e04ee353a24dccb9d76f2489fff8e5f
tree9b220d6dc36b86b356bdabe65e1e75457a83cceb
parentbe7aa9facb20305891bc1dfa62c7b3d3e1f58323
parenta8ee9c9b58199be2692f7eb761d7a01749f79655
Merge branch 'mptcp-refactor-token-container'

Paolo Abeni says:

====================
mptcp: refactor token container

Currently the msk sockets are stored in a single radix tree, protected by a
global spin_lock. This series moves to an hash table, allocated at boot time,
with per bucker spin_lock - alike inet_hashtables, but using a different key:
the token itself.

The above improves scalability, as write operations will have a far later chance
to compete for lock acquisition, allows lockless lookup, and will allow
easier msk traversing - e.g. for diag interface implementation's sake.

This also introduces trivial, related, kunit tests and move the existing in
kernel's one to kunit.

v1 -> v2:
 - fixed a few extra and sparse warns
====================

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