Re: [PATCH net-next] mptcp: reset blackhole on success with non-loopback ifaces
From: Simon Horman
Date: Thu Sep 18 2025 - 12:18:08 EST
On Thu, Sep 18, 2025 at 10:50:18AM +0200, Matthieu Baerts (NGI0) wrote:
> When a first MPTCP connection gets successfully established after a
> blackhole period, 'active_disable_times' was supposed to be reset when
> this connection was done via any non-loopback interfaces.
>
> Unfortunately, the opposite condition was checked: only reset when the
> connection was established via a loopback interface. Fixing this by
> simply looking at the opposite.
>
> This is similar to what is done with TCP FastOpen, see
> tcp_fastopen_active_disable_ofo_check().
>
> This patch is a follow-up of a previous discussion linked to commit
> 893c49a78d9f ("mptcp: Use __sk_dst_get() and dst_dev_rcu() in
> mptcp_active_enable()."), see [1].
>
> Fixes: 27069e7cb3d1 ("mptcp: disable active MPTCP in case of blackhole")
> Cc: stable@xxxxxxxxxxxxxxx
> Link: https://lore.kernel.org/4209a283-8822-47bd-95b7-87e96d9b7ea3@xxxxxxxxxx [1]
> Signed-off-by: Matthieu Baerts (NGI0) <matttbe@xxxxxxxxxx>
> ---
> Cc: Kuniyuki Iwashima <kuniyu@xxxxxxxxxx>
> Note: sending this fix to net-next, similar to commits 108a86c71c93
> ("mptcp: Call dst_release() in mptcp_active_enable().") and 893c49a78d9f
> ("mptcp: Use __sk_dst_get() and dst_dev_rcu() in mptcp_active_enable().").
> Also to avoid conflicts, and because we are close to the merge windows.
Reviewed-by: Simon Horman <horms@xxxxxxxxxx>