Re: FAILED: patch "[PATCH] mptcp: fix data races on local_id" failed to apply to 5.15-stable tree
From: Matthieu Baerts <matttbe@kernel.org>
Date: 2024-02-28 17:46:27
Hi Greg, On 26/02/2024 14:17, gregkh@linuxfoundation.org wrote:
The patch below does not apply to the 5.15-stable tree.
(...)
Possible dependencies:
a7cfe7766370 ("mptcp: fix data races on local_id")
84c531f54ad9 ("mptcp: userspace pm send RM_ADDR for ID 0")
f1f26512a9bf ("mptcp: use plain bool instead of custom binary enum")
1e07938e29c5 ("net: mptcp: rename netlink handlers to mptcp_pm_nl_<blah>_{doit,dumpit}")
1d0507f46843 ("net: mptcp: convert netlink from small_ops to ops")
fce68b03086f ("mptcp: add scheduled in mptcp_subflow_context")
1730b2b2c5a5 ("mptcp: add sched in mptcp_sock")
740ebe35bd3f ("mptcp: add struct mptcp_sched_ops")
a7384f391875 ("Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net")(...)
From a7cfe776637004a4c938fde78be4bd608c32c3ef Mon Sep 17 00:00:00 2001 From: Paolo Abeni <pabeni@redhat.com> Date: Thu, 15 Feb 2024 19:25:31 +0100 Subject: [PATCH] mptcp: fix data races on local_id The local address id is accessed lockless by the NL PM, add all the required ONCE annotation. There is a caveat: the local id can be initialized late in the subflow life-cycle, and its validity is controlled by the local_id_valid flag. Remove such flag and encode the validity in the local_id field itself with negative value before initialization. That allows accessing the field consistently with a single read operation.
FYI, because of the various conflicts, and because the issue seems unlikely is quite harmless -- e.g. a duplicated subflow is created --, I think it is better not to try to backport this patch to v5.15 and older. Cheers, Matt -- Sponsored by the NGI0 Core fund.