Hi Greg,
On 19/02/2024 17:05, gregkh@linuxfoundation.org wrote:
The patch below does not apply to the 6.1-stable tree.
(...)
From e4a0fa47e816e186f6b4c0055d07eeec42d11871 Mon Sep 17 00:00:00 2001 From: Paolo Abeni pabeni@redhat.com Date: Thu, 8 Feb 2024 19:03:52 +0100 Subject: [PATCH] mptcp: corner case locking for rx path fields initialization
Most MPTCP-level related fields are under the mptcp data lock protection, but are written one-off without such lock at MPC complete time, both for the client and the server
Leverage the mptcp_propagate_state() infrastructure to move such initialization under the proper lock client-wise.
The server side critical init steps are done by mptcp_subflow_fully_established(): ensure the caller properly held the relevant lock, and avoid acquiring the same lock in the nested scopes.
There are no real potential races, as write access to such fields is implicitly serialized by the MPTCP state machine; the primary goal is consistency.
FYI, because of the various conflicts, and because "there are no real potential races", with Paolo, we think it is best not to backport this patch to v6.1 and older.
Cheers, Matt