Commit 047558ca authored by Paolo Abeni's avatar Paolo Abeni
Browse files

Merge branch 'mptcp-blackhole-only-if-1st-syn-retrans-w-o-mpc-is-accepted'



Matthieu Baerts says:

====================
mptcp: blackhole only if 1st SYN retrans w/o MPC is accepted

Here are two small fixes for issues introduced in v6.12.

- Patch 1: reset the mpc_drop mark for other SYN retransmits, to only
  consider an MPTCP blackhole when the first SYN retransmitted without
  the MPTCP options is accepted, as initially intended.

- Patch 2: also mention in the doc that the blackhole_timeout sysctl
  knob is per-netns, like all the others.

Signed-off-by: default avatarMatthieu Baerts (NGI0) <matttbe@kernel.org>
====================

Link: https://patch.msgid.link/20250129-net-mptcp-blackhole-fix-v1-0-afe88e5a6d2c@kernel.org


Signed-off-by: default avatarPaolo Abeni <pabeni@redhat.com>
parents 3effcc04 18da4b5d
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -41,7 +41,7 @@ blackhole_timeout - INTEGER (seconds)
	MPTCP is re-enabled and will reset to the initial value when the
	blackhole issue goes away.

	0 to disable the blackhole detection.
	0 to disable the blackhole detection. This is a per-namespace sysctl.

	Default: 3600

+2 −2
Original line number Diff line number Diff line
@@ -418,9 +418,9 @@ void mptcp_active_detect_blackhole(struct sock *ssk, bool expired)
			MPTCP_INC_STATS(net, MPTCP_MIB_MPCAPABLEACTIVEDROP);
			subflow->mpc_drop = 1;
			mptcp_subflow_early_fallback(mptcp_sk(subflow->conn), subflow);
		} else {
			subflow->mpc_drop = 0;
		}
	} else if (ssk->sk_state == TCP_SYN_SENT) {
		subflow->mpc_drop = 0;
	}
}