From: Matthieu Baerts <matttbe@kernel.org>
To: Paolo Abeni <pabeni@redhat.com>, mptcp@lists.linux.dev
Subject: Re: [PATCH v3 mptcp-net 0/5] mptcp: fix fallback-related races
Date: Thu, 10 Jul 2025 19:41:04 +0200 [thread overview]
Message-ID: <c3f79dba-dcaa-45b4-9ee2-5145c32db16e@kernel.org> (raw)
In-Reply-To: <cover.1752073685.git.pabeni@redhat.com>
Hi Paolo,
On 09/07/2025 17:12, Paolo Abeni wrote:
> This series contains 3 fixes somewhat related to various races we have
> while handling fallback and 2 small follow-up likely more suited for
> net-next.
>
> The root cause of the issues addressed here is that the check for
> "we can fallback to tcp now" and the related action are not atomic. That
> also applies to fallback due to MP_FAIL - where the window race is even
> wider.
>
> Address the issue introducing an additional spinlock to bundle together
> all the relevant events, as per patch 1 and 2.
>
> Note that mptcp_disconnect() unconditionally
> clears the fallback status (zeroing msk->flags) but don't tuch the
> `allows_infinite_fallback` flag. Such issue is addressed in patch 3.
>
> Patch 4 cleans up a bit the fallback code, introducing specific MIB for
> each FB reason, and patch 5 drops the, hopefully now redundant
> pr_fallback().
> ---
> v2 -> v3:
> - mptcp_do_fallback -> mptcp_try_fallback
> - refactored patch 3/5
> - changed mibs names, increment fail only when the protocol mandate it
> - fix W=1 warn in patch 5/5
Thank you for the new version!
It looks good to me, I just a few small questions, not really blocking
the series, and I can eventually do the small modifications when
applying the patches if you prefer.
>
> Paolo Abeni (5):
> mptcp: make fallback action and fallback decision atomic
> mptcp: plug races between subflow fail and subflow creation
> mptcp: reset fallback status gracefully at disconnect() time
> mptcp: track fallbacks accurately via mibs
> mptcp: remove pr_fallback()
>
> net/mptcp/ctrl.c | 4 +-
> net/mptcp/mib.c | 5 +++
> net/mptcp/mib.h | 7 ++++
> net/mptcp/options.c | 6 ++-
> net/mptcp/pm.c | 8 +++-
> net/mptcp/protocol.c | 97 ++++++++++++++++++++++++++++++++++----------
> net/mptcp/protocol.h | 35 ++++++++--------
> net/mptcp/subflow.c | 40 ++++++++++--------
> 8 files changed, 140 insertions(+), 62 deletions(-)
>
Cheers,
Matt
--
Sponsored by the NGI0 Core fund.
prev parent reply other threads:[~2025-07-10 17:41 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-09 15:12 [PATCH v3 mptcp-net 0/5] mptcp: fix fallback-related races Paolo Abeni
2025-07-09 15:12 ` [PATCH v3 mptcp-net 1/5] mptcp: make fallback action and fallback decision atomic Paolo Abeni
2025-07-10 17:41 ` Matthieu Baerts
2025-07-11 7:26 ` Paolo Abeni
2025-07-11 7:38 ` Matthieu Baerts
2025-07-09 15:12 ` [PATCH v3 mptcp-net 2/5] mptcp: plug races between subflow fail and subflow creation Paolo Abeni
2025-07-09 15:12 ` [PATCH v3 mptcp-net 3/5] mptcp: reset fallback status gracefully at disconnect() time Paolo Abeni
2025-07-09 15:12 ` [PATCH v3 mptcp-net 4/5] mptcp: track fallbacks accurately via mibs Paolo Abeni
2025-07-10 17:41 ` Matthieu Baerts
2025-07-11 7:26 ` Paolo Abeni
2025-07-09 15:12 ` [PATCH v3 mptcp-net 5/5] mptcp: remove pr_fallback() Paolo Abeni
2025-07-09 18:03 ` [PATCH v3 mptcp-net 0/5] mptcp: fix fallback-related races MPTCP CI
2025-07-10 17:41 ` Matthieu Baerts [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=c3f79dba-dcaa-45b4-9ee2-5145c32db16e@kernel.org \
--to=matttbe@kernel.org \
--cc=mptcp@lists.linux.dev \
--cc=pabeni@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.