[PATCH mptcp-next 0/8] selftests/mptcp: consolidate TCP_INQ testing into sockopt

Geliang Tang posted 8 patches 1 month, 1 week ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/multipath-tcp/mptcp_net-next tags/patchew/cover.1754620968.git.tanggeliang@kylinos.cn
tools/testing/selftests/net/mptcp/.gitignore  |   1 -
tools/testing/selftests/net/mptcp/Makefile    |   2 +-
tools/testing/selftests/net/mptcp/mptcp_inq.c | 608 ------------------
.../selftests/net/mptcp/mptcp_sockopt.c       | 347 +++++++++-
.../selftests/net/mptcp/mptcp_sockopt.sh      |   6 +-
5 files changed, 321 insertions(+), 643 deletions(-)
delete mode 100644 tools/testing/selftests/net/mptcp/mptcp_inq.c
[PATCH mptcp-next 0/8] selftests/mptcp: consolidate TCP_INQ testing into sockopt
Posted by Geliang Tang 1 month, 1 week ago
From: Geliang Tang <tanggeliang@kylinos.cn>

This series consolidates the TCP_INQ test functionality from mptcp_inq
into mptcp_sockopt, simplifying the test suite while maintaining full
test coverage. The key changes include:

1. Adding necessary protocol arguments and IPC improvements to sockopt
2. Implementing TCP_INQ test logic within the sockopt test binary
3. Migrating test execution to use the enhanced sockopt binary
4. Removing the now-obsolete mptcp_inq test binary

The consolidation provides several benefits:
- Reduces code duplication by sharing common infrastructure
- Simplifies maintenance with a single test binary
- Maintains identical test coverage for TCP_INQ functionality
- Improves code clarity with better IPC naming
- Enhances flexibility through new protocol selection options

The series is structured as follows:

Patch 1:  Simplifies RNG initialization using getrandom
Patch 2:  Adds protocol selection arguments for tx/rx paths
Patch 3:  Introduces '-i' option to enable TCP_INQ testing
Patch 4:  Renames pipefd to ipcfd for better IPC abstraction
Patch 5:  Implements TCP_INQ client processing logic
Patch 6:  Adds TCP_INQ server connection handling
Patch 7:  Updates test script to use sockopt instead of inq
Patch 8:  Removes the obsolete mptcp_inq binary

The changes maintain backward compatibility while extending
functionality, and all tests pass with the same coverage as before.

Geliang Tang (8):
  selftests: mptcp: sockopt: use getrandom for initialization
  selftests: mptcp: sockopt: add protocol arguments
  selftests: mptcp: sockopt: add inq argument
  selftests: mptcp: sockopt: rename pipefd to ipcfd
  selftests: mptcp: sockopt: add TCP_INQ client processing
  selftests: mptcp: sockopt: add TCP_INQ server connection
  selftests: mptcp: replace mptcp_inq with sockopt
  selftests: mptcp: remove obsolete mptcp_inq

 tools/testing/selftests/net/mptcp/.gitignore  |   1 -
 tools/testing/selftests/net/mptcp/Makefile    |   2 +-
 tools/testing/selftests/net/mptcp/mptcp_inq.c | 608 ------------------
 .../selftests/net/mptcp/mptcp_sockopt.c       | 347 +++++++++-
 .../selftests/net/mptcp/mptcp_sockopt.sh      |   6 +-
 5 files changed, 321 insertions(+), 643 deletions(-)
 delete mode 100644 tools/testing/selftests/net/mptcp/mptcp_inq.c

-- 
2.48.1
Re: [PATCH mptcp-next 0/8] selftests/mptcp: consolidate TCP_INQ testing into sockopt
Posted by MPTCP CI 1 month, 1 week ago
Hi Geliang,

Thank you for your modifications, that's great!

Our CI did some validations and here is its report:

- KVM Validation: normal: Success! ✅
- KVM Validation: debug: Unstable: 3 failed test(s): packetdrill_mp_capable selftest_mptcp_connect selftest_mptcp_connect_checksum 🔴
- KVM Validation: btf-normal (only bpftest_all): Success! ✅
- KVM Validation: btf-debug (only bpftest_all): Success! ✅
- Task: https://github.com/multipath-tcp/mptcp_net-next/actions/runs/16820854650

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


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)