[<prev] [next>] [day] [month] [year] [list]
Message-Id: <20220611021646.1578080-1-joannelkoong@gmail.com>
Date: Fri, 10 Jun 2022 19:16:43 -0700
From: Joanne Koong <joannelkoong@...il.com>
To: netdev@...r.kernel.org
Cc: edumazet@...gle.com, kafai@...com, kuba@...nel.org,
davem@...emloft.net, pabeni@...hat.com,
mathew.j.martineau@...ux.intel.com,
Joanne Koong <joannelkoong@...il.com>
Subject: [PATCH net-next v3 0/3] bhash2 binding table fixups
There are two fix-ups related to the bhash2 binding table in this
patchset:
1) Fixes an inconsistency in the bhash2 table in the case where a
socket's rcv saddr changes after it is binded.
2) Fixes the case where the bhash2 hashbucket is accessed concurrently
by sockets that hash to different bhash hashbuckets. To address this, the
bhash2 hashbucket has its own lock.
--
v2 -> v3:
v2:
https://lore.kernel.org/netdev/20220602165101.3188482-1-joannelkoong@gmail.com/
* Add a patch that adds bhash2 hashbucket locks
v1 -> v2:
v1:
https://lore.kernel.org/netdev/20220601201434.1710931-1-joannekoong@fb.com/
* Mark __inet_bhash2_update_saddr as static
Joanne Koong (3):
net: Update bhash2 when socket's rcv saddr changes
net: Add bhash2 hashbucket locks
selftests/net: Add sk_bind_sendto_listen test
include/net/inet_hashtables.h | 31 +++--
include/net/ipv6.h | 2 +-
net/dccp/ipv4.c | 10 +-
net/dccp/ipv6.c | 4 +-
net/dccp/proto.c | 3 +-
net/ipv4/af_inet.c | 7 +-
net/ipv4/inet_connection_sock.c | 60 +++++----
net/ipv4/inet_hashtables.c | 115 +++++++++++++-----
net/ipv4/tcp.c | 7 +-
net/ipv4/tcp_ipv4.c | 8 +-
net/ipv6/inet6_hashtables.c | 4 +-
net/ipv6/tcp_ipv6.c | 4 +-
tools/testing/selftests/net/.gitignore | 1 +
tools/testing/selftests/net/Makefile | 1 +
.../selftests/net/sk_bind_sendto_listen.c | 82 +++++++++++++
15 files changed, 251 insertions(+), 88 deletions(-)
create mode 100644 tools/testing/selftests/net/sk_bind_sendto_listen.c
--
2.30.2
Powered by blists - more mailing lists