* [PATCH 6.1.y 0/2] selftests: mptcp: specific fixes for v6.1
@ 2026-03-24 9:49 Matthieu Baerts (NGI0)
2026-03-24 9:49 ` [PATCH 6.1.y 1/2] selftests: mptcp: join: implicit: stop transfer after last check Matthieu Baerts (NGI0)
2026-03-24 9:49 ` [PATCH 6.1.y 2/2] selftests: mptcp: join: check removing signal+subflow endp Matthieu Baerts (NGI0)
0 siblings, 2 replies; 3+ messages in thread
From: Matthieu Baerts (NGI0) @ 2026-03-24 9:49 UTC (permalink / raw)
To: mptcp, stable, gregkh; +Cc: Matthieu Baerts (NGI0), sashal
Here is one fix, plus a new version of a patch including an adaptation
required for v6.1.
The first patch fixes an issue with the MPTCP Join selftest, only
visible in selftests from the v6.1 tree: it is required to explicitly
stop the test with another dedicated helper.
The second patch is a backport that needs to be adapted to work with the
selftests suite on v6.1.
Matthieu Baerts (NGI0) (2):
selftests: mptcp: join: implicit: stop transfer after last check
selftests: mptcp: join: check removing signal+subflow endp
tools/testing/selftests/net/mptcp/mptcp_join.sh | 14 ++++++++++++++
1 file changed, 14 insertions(+)
--
2.53.0
^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 6.1.y 1/2] selftests: mptcp: join: implicit: stop transfer after last check
2026-03-24 9:49 [PATCH 6.1.y 0/2] selftests: mptcp: specific fixes for v6.1 Matthieu Baerts (NGI0)
@ 2026-03-24 9:49 ` Matthieu Baerts (NGI0)
2026-03-24 9:49 ` [PATCH 6.1.y 2/2] selftests: mptcp: join: check removing signal+subflow endp Matthieu Baerts (NGI0)
1 sibling, 0 replies; 3+ messages in thread
From: Matthieu Baerts (NGI0) @ 2026-03-24 9:49 UTC (permalink / raw)
To: mptcp, stable, gregkh; +Cc: Matthieu Baerts (NGI0), sashal
With this kernel version, the 'implicit EP' MPTCP Join selftest ended
with an error message:
115 implicit EP creation[ ok ]
ID change is prevented[ ok ]
modif is allowed[ ok ]
TcpPassiveOpens 2 0.0
TcpEstabResets 2 0.0
TcpInSegs 315 0.0
TcpOutSegs 617 0.0
TcpOutRsts 1 0.0
TcpExtDelayedACKs 289 0.0
TcpExtTCPPureAcks 6 0.0
TcpExtTCPOrigDataSent 306 0.0
TcpExtTCPDelivered 306 0.0
MPTcpExtMPCapableSYNRX 1 0.0
MPTcpExtMPCapableACKRX 1 0.0
MPTcpExtMPJoinSynRx 1 0.0
MPTcpExtMPJoinAckRx 1 0.0
MPTcpExtAddAddr 1 0.0
MPTcpExtEchoAdd 1 0.0
MPTcpExtMPFastcloseTx 1 0.0
MPTcpExtMPRstTx 1 0.0
MPTcpExtMPRstRx 1 0.0
TcpActiveOpens 2 0.0
TcpEstabResets 2 0.0
TcpInSegs 617 0.0
TcpOutSegs 315 0.0
TcpOutRsts 1 0.0
TcpExtTCPPureAcks 308 0.0
TcpExtTCPOrigDataSent 306 0.0
TcpExtTCPDelivered 307 0.0
MPTcpExtMPCapableSYNTX 1 0.0
MPTcpExtMPCapableSYNACKRX 1 0.0
MPTcpExtMPJoinSynAckRx 1 0.0
MPTcpExtAddAddr 1 0.0
MPTcpExtEchoAdd 1 0.0
MPTcpExtMPFastcloseRx 1 0.0
MPTcpExtMPRstTx 1 0.0
MPTcpExtMPRstRx 1 0.0
MPTcpExtRcvWndShared 1 0.0
That's because the test was waiting for the end of the transfer for no
reasons, which ended after a timeout with an error. In this case, the
stats were displayed, but this error was ignored: the end of transfer is
not validated in this test.
To fix that, stop the transfer after the last check, similar to what is
done in the other tests.
Fixes: 699879d5f866 ("selftests: mptcp: join: endpoints: longer transfer")
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
---
tools/testing/selftests/net/mptcp/mptcp_join.sh | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testing/selftests/net/mptcp/mptcp_join.sh
index 80497053fe2f..044ba9c4e169 100755
--- a/tools/testing/selftests/net/mptcp/mptcp_join.sh
+++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh
@@ -3429,6 +3429,7 @@ endpoint_tests()
pm_nl_set_limits $ns2 2 2
pm_nl_add_endpoint $ns1 10.0.2.1 flags signal
run_tests $ns1 $ns2 10.0.1.1 128 0 0 slow 2>/dev/null &
+ local tests_pid=$!
wait_mpj $ns1
pm_nl_check_endpoint 1 "creation" \
@@ -3441,6 +3442,7 @@ endpoint_tests()
pm_nl_add_endpoint $ns2 10.0.2.2 flags signal
pm_nl_check_endpoint 0 "modif is allowed" \
$ns2 10.0.2.2 id 1 flags signal
+ kill_wait "${tests_pid}"
kill_tests_wait
fi
--
2.53.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [PATCH 6.1.y 2/2] selftests: mptcp: join: check removing signal+subflow endp
2026-03-24 9:49 [PATCH 6.1.y 0/2] selftests: mptcp: specific fixes for v6.1 Matthieu Baerts (NGI0)
2026-03-24 9:49 ` [PATCH 6.1.y 1/2] selftests: mptcp: join: implicit: stop transfer after last check Matthieu Baerts (NGI0)
@ 2026-03-24 9:49 ` Matthieu Baerts (NGI0)
1 sibling, 0 replies; 3+ messages in thread
From: Matthieu Baerts (NGI0) @ 2026-03-24 9:49 UTC (permalink / raw)
To: mptcp, stable, gregkh
Cc: Matthieu Baerts (NGI0), sashal, Mat Martineau, Jakub Kicinski
commit 1777f349ff41b62dfe27454b69c27b0bc99ffca5 upstream.
This validates the previous commit: endpoints with both the signal and
subflow flags should always be marked as used even if it was not
possible to create new subflows due to the MPTCP PM limits.
For this test, an extra endpoint is created with both the signal and the
subflow flags, and limits are set not to create extra subflows. In this
case, an ADD_ADDR is sent, but no subflows are created. Still, the local
endpoint is marked as used, and no warning is fired when removing the
endpoint, after having sent a RM_ADDR.
The 'Fixes' tag here below is the same as the one from the previous
commit: this patch here is not fixing anything wrong in the selftests,
but it validates the previous fix for an issue introduced by this commit
ID.
Fixes: 85df533a787b ("mptcp: pm: do not ignore 'subflow' if 'signal' flag is also set")
Cc: stable@vger.kernel.org
Reviewed-by: Mat Martineau <martineau@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://patch.msgid.link/20260303-net-mptcp-misc-fixes-7-0-rc2-v1-5-4b5462b6f016@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
[ No conflicts, but in this kernel version 'run_tests' doesn't support
parameters set via env vars: positional parameters need to be used.
See commit 595ef566a2ef ("selftests: mptcp: drop addr_nr_ns1/2
parameters") and commit e571fb09c893 ("selftests: mptcp: add speed env
var") which are not in this kernel version. ]
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
---
tools/testing/selftests/net/mptcp/mptcp_join.sh | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testing/selftests/net/mptcp/mptcp_join.sh
index 044ba9c4e169..973f76557f23 100755
--- a/tools/testing/selftests/net/mptcp/mptcp_join.sh
+++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh
@@ -2407,6 +2407,18 @@ remove_tests()
chk_rst_nr 0 0
fi
+ # signal+subflow with limits, remove
+ if reset "remove signal+subflow with limits"; then
+ pm_nl_set_limits $ns1 0 0
+ pm_nl_add_endpoint $ns1 10.0.2.1 flags signal,subflow
+ pm_nl_set_limits $ns2 0 0
+ run_tests $ns1 $ns2 10.0.1.1 0 -1 0 slow
+ chk_join_nr 0 0 0
+ chk_add_nr 1 1
+ chk_rm_nr 1 0 invert
+ chk_rst_nr 0 0
+ fi
+
# addresses remove
if reset "remove addresses"; then
pm_nl_set_limits $ns1 3 3
--
2.53.0
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2026-03-24 9:50 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-24 9:49 [PATCH 6.1.y 0/2] selftests: mptcp: specific fixes for v6.1 Matthieu Baerts (NGI0)
2026-03-24 9:49 ` [PATCH 6.1.y 1/2] selftests: mptcp: join: implicit: stop transfer after last check Matthieu Baerts (NGI0)
2026-03-24 9:49 ` [PATCH 6.1.y 2/2] selftests: mptcp: join: check removing signal+subflow endp Matthieu Baerts (NGI0)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox