Recently, a few issues have been discovered around the creation of additional subflows. Without these counters, it was difficult to point out the reason why some subflows were not created as expected.
In patch 3, all error paths from __mptcp_subflow_connect() are covered, except the one related to the 'fully established mode', because it can only happen with the userspace PM, which will propagate the error to the userspace in this case (ENOTCONN).
These new counters are also verified in the MPTCP Join selftest in patch 6.
While at it, a few other patches are improving the MPTCP path-manager code ...
- Patch 1: 'flush' related helpers are renamed to avoid confusions - Patch 2: directly pass known ID and flags to create a new subflow, i/o getting them later by iterating over all endpoints again
... and the MPJoin selftests:
- Patch 4: reduce the number of positional parameters - Patch 5: only one line for the 'join' checks, instead of 3 - Patch 7: more explicit check names, instead of sometimes too cryptic ones: rtx, ptx, ftx, ctx, fclzrx, sum - Patch 8: specify client/server instead of 'invert' for some checks not suggesting one specific direction - Patch 9: mute errors of mptcp_connect when ran in the background - Patch 10: simplify checksum_tests by using a for-loop - Patch 11: remove 'define' re-definitions
Signed-off-by: Matthieu Baerts (NGI0) matttbe@kernel.org --- Geliang Tang (1): selftests: mptcp: join: simplify checksum_tests
Matthieu Baerts (NGI0) (10): mptcp: pm: rename helpers linked to 'flush' mptcp: pm: reduce entries iterations on connect mptcp: MIB counters for sent MP_JOIN selftests: mptcp: join: reduce join_nr params selftests: mptcp: join: one line for join check selftests: mptcp: join: validate MPJ SYN TX MIB counters selftests: mptcp: join: more explicit check name selftests: mptcp: join: specify host being checked selftests: mptcp: join: mute errors when ran in the background selftests: mptcp: pm_nl_ctl: remove re-definition
net/mptcp/mib.c | 4 + net/mptcp/mib.h | 4 + net/mptcp/pm.c | 11 - net/mptcp/pm_netlink.c | 78 ++---- net/mptcp/pm_userspace.c | 40 +-- net/mptcp/protocol.h | 16 +- net/mptcp/subflow.c | 50 +++- tools/testing/selftests/net/mptcp/mptcp_join.sh | 350 ++++++++++++++---------- tools/testing/selftests/net/mptcp/pm_nl_ctl.c | 10 +- 9 files changed, 309 insertions(+), 254 deletions(-) --- base-commit: 221f9cce949ac8042f65b71ed1fde13b99073256 change-id: 20240902-net-next-mptcp-mib-mpjtx-misc-d80298438016
Best regards,