Message ID | 20240202-upstream-net-next-20240202-mptcp-annotate-lockless-access-v1-0-031d6680afdc@kernel.org (mailing list archive) |
---|---|
Headers | show |
Series | mptcp: annotate lockless access | expand |
Hello: This series was applied to netdev/net-next.git (main) by David S. Miller <davem@davemloft.net>: On Fri, 02 Feb 2024 12:40:06 +0100 you wrote: > This is a series of 5 patches from Paolo to annotate lockless access. > > The MPTCP locking schema is already quite complex. We need to clarify it > and make the lockless access already there consistent, or later changes > will be even harder to follow and understand. > > This series goes through all the msk fields accessed in the RX and TX > path and makes the lockless annotation consistent with the in-use > locking schema. > > [...] Here is the summary with links: - [net-next,1/5] mptcp: annotate access for msk keys https://git.kernel.org/netdev/net-next/c/1c09d7cbb57a - [net-next,2/5] mptcp: annotate lockless access for the tx path https://git.kernel.org/netdev/net-next/c/d440a4e27acd - [net-next,3/5] mptcp: annotate lockless access for RX path fields https://git.kernel.org/netdev/net-next/c/9426ce476a70 - [net-next,4/5] mptcp: annotate lockless access for token https://git.kernel.org/netdev/net-next/c/b9f4554356f6 - [net-next,5/5] mptcp: annotate lockless accesses around read-mostly fields https://git.kernel.org/netdev/net-next/c/28e5c1380506 You are awesome, thank you!
This is a series of 5 patches from Paolo to annotate lockless access. The MPTCP locking schema is already quite complex. We need to clarify it and make the lockless access already there consistent, or later changes will be even harder to follow and understand. This series goes through all the msk fields accessed in the RX and TX path and makes the lockless annotation consistent with the in-use locking schema. As a bonus, this should fix data races eventually found by fuzzers -- even if we haven't seen many such reports so far. Patch 1/5 hints we could remove "local_key" and "remote_key" from the subflow context, and always use the ones from the msk socket, possibly reducing the context memory usage. That change is left over as a possible follow-up. Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org> --- Paolo Abeni (5): mptcp: annotate access for msk keys mptcp: annotate lockless access for the tx path mptcp: annotate lockless access for RX path fields mptcp: annotate lockless access for token mptcp: annotate lockless accesses around read-mostly fields net/mptcp/options.c | 20 +++++++++---------- net/mptcp/pm.c | 2 +- net/mptcp/pm_netlink.c | 10 +++++----- net/mptcp/protocol.c | 52 ++++++++++++++++++++++++++------------------------ net/mptcp/protocol.h | 8 +++++--- net/mptcp/sockopt.c | 2 +- net/mptcp/subflow.c | 10 ++++++---- 7 files changed, 55 insertions(+), 49 deletions(-) --- base-commit: 747056a9a954d694dac91d1da6cfff5e6f0e3fc6 change-id: 20240202-upstream-net-next-20240202-mptcp-annotate-lockless-access-f7cd0955da5c Best regards,