[ Sasha's backport helper bot ]
Hi,
✅ All tests passed successfully. No issues detected. No action required from the submitter.
The upstream commit SHA1 provided is correct: da9b2fc7b73d147d88abe1922de5ab72d72d7756
WARNING: Author mismatch between patch and upstream commit: Backport author: Matthieu Baerts (NGI0) matttbe@kernel.org Commit author: Paolo Abeni pabeni@redhat.com
Status in newer kernel trees: 6.15.y | Not found 6.12.y | Not found 6.6.y | Not found
Note: The patch differs from the upstream commit: --- 1: da9b2fc7b73d ! 1: 96832530025f mptcp: reset fallback status gracefully at disconnect() time @@ Metadata ## Commit message ## mptcp: reset fallback status gracefully at disconnect() time
+ commit da9b2fc7b73d147d88abe1922de5ab72d72d7756 upstream. + mptcp_disconnect() clears the fallback bit unconditionally, without touching the associated flags.
@@ Commit message Signed-off-by: Matthieu Baerts (NGI0) matttbe@kernel.org Link: https://patch.msgid.link/20250714-net-mptcp-fallback-races-v1-3-391aff963322... Signed-off-by: Jakub Kicinski kuba@kernel.org + [ Conflicts in protocol.c, because commit ebc1e08f01eb ("mptcp: drop + last_snd and MPTCP_RESET_SCHEDULER") is not in this version and + changed the context. The same modification can still be applied at the + same place. ] + Signed-off-by: Matthieu Baerts (NGI0) matttbe@kernel.org
## net/mptcp/protocol.c ## @@ net/mptcp/protocol.c: static int mptcp_disconnect(struct sock *sk, int flags) - * subflow */ mptcp_destroy_common(msk, MPTCP_CF_FASTCLOSE); + msk->last_snd = NULL; + + /* The first subflow is already in TCP_CLOSE status, the following + * can't overlap with a fallback anymore @@ net/mptcp/protocol.c: static int mptcp_disconnect(struct sock *sk, int flags) + msk->cb_flags = 0; msk->recovery = false; - WRITE_ONCE(msk->can_ack, false); + msk->can_ack = false;
---
Results of testing on various branches:
| Branch | Patch Apply | Build Test | |---------------------------|-------------|------------| | 6.1 | Success | Success |