| From 8afb22e4563f936efdf4a6666a2221ec1f79a883 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Mon, 24 Feb 2025 19:11:52 +0100 |
| Subject: mptcp: safety check before fallback |
| |
| From: Matthieu Baerts (NGI0) <matttbe@kernel.org> |
| |
| [ 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 | 2 ++ |
| 1 file changed, 2 insertions(+) |
| |
| diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h |
| index 83e93a7e9b40e..cfb6aa72515e8 100644 |
| --- a/net/mptcp/protocol.h |
| +++ b/net/mptcp/protocol.h |
| @@ -872,6 +872,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); |
| } |
| |
| -- |
| 2.39.5 |
| |