[PATCH mptcp-next v2 0/5] mptcp: reset fully_estab after fallback & reject MPJ earlier

Matthieu Baerts (NGI0) posted 5 patches 6 days, 7 hours ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/multipath-tcp/mptcp_net-next tags/patchew/20261030-mptcp-reset-mpj-early-v2-0-90f119392263@kernel.org
net/mptcp/mib.c                                 |   1 +
net/mptcp/mib.h                                 |   1 +
net/mptcp/pm_kernel.c                           |  18 +-
net/mptcp/protocol.c                            |   1 +
net/mptcp/subflow.c                             | 210 +++++++++++++-----------
tools/testing/selftests/net/mptcp/mptcp_join.sh |  55 +++++--
6 files changed, 171 insertions(+), 115 deletions(-)
[PATCH mptcp-next v2 0/5] mptcp: reset fully_estab after fallback & reject MPJ earlier
Posted by Matthieu Baerts (NGI0) 6 days, 7 hours ago
Bailing out early when we can: reset the fully established when a
fallback is done, then reject the MPJ earlier, and finally stop
processing connections early with the in-kernel PM. Plus two
refactoring patches.

Maybe the first patch should be backported? Eventually the second
and fourth ones if we find related issues? (That's why I put the
refactoring patches after.)

Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
---
Changes in v2:
- patch 2: why the new racy check is OK, +ed, support old kernels & synC
- patch 3: new
- patch 4: safer approach
- patch 5: new
- Link to v1: https://patch.msgid.link/20260814-mptcp-reset-mpj-early-v1-0-3ca3260f9474@kernel.org

---
Matthieu Baerts (NGI0) (5):
      mptcp: no longer fully_established after a fallback
      mptcp: reject MP_JOIN earlier
      mptcp: subflow: split subflow_check_req()
      mptcp: pm: kernel: skip operating on closing connections
      mptcp: pm: kernel: avoid mptcp_pm_is_userspace checks

 net/mptcp/mib.c                                 |   1 +
 net/mptcp/mib.h                                 |   1 +
 net/mptcp/pm_kernel.c                           |  18 +-
 net/mptcp/protocol.c                            |   1 +
 net/mptcp/subflow.c                             | 210 +++++++++++++-----------
 tools/testing/selftests/net/mptcp/mptcp_join.sh |  55 +++++--
 6 files changed, 171 insertions(+), 115 deletions(-)
---
base-commit: bcc5638fabf418e763621a432840cf55287e604d
change-id: 20260814-mptcp-reset-mpj-early-dcc7d4d92df9

Best regards,
--  
Matthieu Baerts (NGI0) <matttbe@kernel.org>
Re: [PATCH mptcp-next v2 0/5] mptcp: reset fully_estab after fallback & reject MPJ earlier
Posted by MPTCP CI 6 days, 5 hours ago
Hi Matthieu,

Thank you for your modifications, that's great!

Our CI did some validations and here is its report:

- KVM Validation: normal (except selftest_mptcp_join): Success! ✅
- KVM Validation: normal (only selftest_mptcp_join): Success! ✅
- KVM Validation: debug (except selftest_mptcp_join): Success! ✅
- KVM Validation: debug (only selftest_mptcp_join): Success! ✅
- KVM Validation: btf-normal (only bpftest_all): Success! ✅
- KVM Validation: btf-debug (only bpftest_all): Success! ✅
- Perf: Success! ✅
- Task: https://github.com/multipath-tcp/mptcp_net-next/actions/runs/40975021307

Initiator: Patchew Applier
Commits: https://github.com/multipath-tcp/mptcp_net-next/commits/78ffe8cb00da
Patchwork: https://patchwork.kernel.org/project/mptcp/list/?series=1196695


If there are some issues, you can reproduce them using the same environment as
the one used by the CI thanks to a docker image, e.g.:

    $ cd [kernel source code]
    $ docker run -v "${PWD}:${PWD}:rw" -w "${PWD}" --privileged --rm -it \
        --pull always mptcp/mptcp-upstream-virtme-docker:latest \
        auto-normal

For more details:

    https://github.com/multipath-tcp/mptcp-upstream-virtme-docker


Please note that despite all the efforts that have been already done to have a
stable tests suite when executed on a public CI like here, it is possible some
reported issues are not due to your modifications. Still, do not hesitate to
help us improve that ;-)

Cheers,
MPTCP GH Action bot
Bot operated by Matthieu Baerts (NGI0 Core)