| From: |
| David Wei <dw-AT-davidwei.uk> |
| To: |
| netdev-AT-vger.kernel.org |
| Subject: |
| [PATCH net-next v1 0/7] selftests/net: add netkit netns ping test |
| Date: |
| Wed, 19 Nov 2025 19:30:09 -0800 |
| Message-ID: |
| <20251120033016.3809474-1-dw@davidwei.uk> |
| Cc: |
| Andrew Lunn <andrew+netdev-AT-lunn.ch>, "David S. Miller" <davem-AT-davemloft.net>, Eric Dumazet <edumazet-AT-google.com>, Jakub Kicinski <kuba-AT-kernel.org>, Paolo Abeni <pabeni-AT-redhat.com>, Daniel Borkmann <daniel-AT-iogearbox.net> |
| Archive-link: |
| Article |
This patchset is mostly prep work for adding a data path test for netkit
bind queue API used by iou zcrx and AF_XDP.
Using memory providers requires carving out queues, setting up flow
steering, enabling some features. Add a new MemPrvEnv, similar to the
existing NetDrvEnv, that automates the setup of the NETIF under test.
Refactor the existing iou-zcrx.py test to use this.
net_iovs cannot be forwarded through the core, and so bpf is needed to
forward skbs from NETIF to the netns netkit. Add a basic configurable
bpf prog and associated loader that does this.
For a remote to talk to the netns netkit, it needs a publicly routable
IP. Add a new env var LOCAL_PREFIX_V{4,6} that defines such a prefix.
Finally, add a basic ping test that brings everything together.
David Wei (7):
selftests/net: add suffix to ksft_run
selftests/net: add MemPrvEnv env
selftests/net: modify iou-zcrx.py to use MemPrvEnv
selftests/net: add rand_ifname() helper
selftests/net: add bpf skb forwarding program
selftests/net: add LOCAL_PREFIX_V{4,6} env to HW selftests
selftests/net: add a netkit netns ping test
.../testing/selftests/drivers/net/README.rst | 6 +
.../selftests/drivers/net/hw/.gitignore | 3 +
.../testing/selftests/drivers/net/hw/Makefile | 10 +-
.../selftests/drivers/net/hw/iou-zcrx.py | 131 +++---------------
.../drivers/net/hw/lib/py/__init__.py | 10 +-
.../selftests/drivers/net/hw/nk_forward.bpf.c | 49 +++++++
.../selftests/drivers/net/hw/nk_forward.c | 102 ++++++++++++++
.../selftests/drivers/net/hw/nk_netns.py | 89 ++++++++++++
.../selftests/drivers/net/lib/py/__init__.py | 9 +-
.../selftests/drivers/net/lib/py/env.py | 72 +++++++++-
.../testing/selftests/net/lib/py/__init__.py | 5 +-
tools/testing/selftests/net/lib/py/ksft.py | 8 +-
tools/testing/selftests/net/lib/py/utils.py | 7 +
13 files changed, 370 insertions(+), 131 deletions(-)
create mode 100644 tools/testing/selftests/drivers/net/hw/nk_forward.bpf.c
create mode 100644 tools/testing/selftests/drivers/net/hw/nk_forward.c
create mode 100755 tools/testing/selftests/drivers/net/hw/nk_netns.py
--
2.47.3