]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
mptcp: safety check before fallback
authorMatthieu Baerts (NGI0) <matttbe@kernel.org>
Mon, 24 Feb 2025 18:11:52 +0000 (19:11 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 22 Mar 2025 19:54:21 +0000 (12:54 -0700)
[ Upstream commit db75a16813aabae3b78c06b1b99f5e314c1f55d3 ]

Recently, some fallback have been initiated, while the connection was
not supposed to fallback.

Add a safety check with a warning to detect when an wrong attempt to
fallback is being done. This should help detecting any future issues
quicker.

Acked-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://patch.msgid.link/20250224-net-mptcp-misc-fixes-v1-3-f550f636b435@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/mptcp/protocol.h

index b70a303e0828785501477032e78afc50fd461b04..7e2f70f22b05b68d895f599080b4debfa0520221 100644 (file)
@@ -1194,6 +1194,8 @@ static inline void __mptcp_do_fallback(struct mptcp_sock *msk)
                pr_debug("TCP fallback already done (msk=%p)\n", msk);
                return;
        }
+       if (WARN_ON_ONCE(!READ_ONCE(msk->allow_infinite_fallback)))
+               return;
        set_bit(MPTCP_FALLBACK_DONE, &msk->flags);
 }