linux-kernelorg-stable/net/mptcp
Paolo Abeni da9b2fc7b7 mptcp: reset fallback status gracefully at disconnect() time
mptcp_disconnect() clears the fallback bit unconditionally, without
touching the associated flags.

The bit clear is safe, as no fallback operation can race with that --
all subflow are already in TCP_CLOSE status thanks to the previous
FASTCLOSE -- but we need to consistently reset all the fallback related
status.

Also acquire the relevant lock, to avoid fouling static analyzers.

Fixes: b29fcfb54c ("mptcp: full disconnect implementation")
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://patch.msgid.link/20250714-net-mptcp-fallback-races-v1-3-391aff963322@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2025-07-15 17:31:25 -07:00
..
Kconfig
Makefile mptcp: pm: split in-kernel PM specific code 2025-03-10 13:35:50 -07:00
bpf.c
crypto.c
crypto_test.c
ctrl.c mptcp: sysctl: add available_path_managers 2025-03-20 10:14:49 +01:00
diag.c tcp: ulp: diag: more info without CAP_NET_ADMIN 2025-03-07 19:39:53 -08:00
fastopen.c mptcp: cleanup mem accounting 2025-02-19 19:05:28 -08:00
mib.c mptcp: add MPJoinRejected MIB counter 2025-04-15 08:21:47 -07:00
mib.h mptcp: add MPJoinRejected MIB counter 2025-04-15 08:21:47 -07:00
mptcp_diag.c
mptcp_pm_gen.c
mptcp_pm_gen.h
options.c mptcp: make fallback action and fallback decision atomic 2025-07-15 17:31:25 -07:00
pm.c mptcp: plug races between subflow fail and subflow creation 2025-07-15 17:31:25 -07:00
pm_kernel.c mptcp: pm: register in-kernel and userspace PM 2025-03-20 10:14:48 +01:00
pm_netlink.c mptcp: pm: split netlink and in-kernel init 2025-03-20 10:14:48 +01:00
pm_userspace.c mptcp: pm: Defer freeing of MPTCP userspace path manager entries 2025-04-23 16:27:58 -07:00
protocol.c mptcp: reset fallback status gracefully at disconnect() time 2025-07-15 17:31:25 -07:00
protocol.h mptcp: plug races between subflow fail and subflow creation 2025-07-15 17:31:25 -07:00
sched.c mptcp: sched: split validation part 2025-04-15 08:21:46 -07:00
sockopt.c mptcp: sockopt: fix getting freebind & transparent 2025-03-21 19:05:26 +01:00
subflow.c mptcp: plug races between subflow fail and subflow creation 2025-07-15 17:31:25 -07:00
syncookies.c
token.c
token_test.c