Re: [PATCH bpf-next v3 5/6] selftests/bpf: add test for XDP metadata support in tun driver
From: Stanislav Fomichev
Date: Mon Feb 24 2025 - 12:21:12 EST
On 02/24, Marcus Wichelmann wrote:
> Add a selftest that creates a tap device, attaches XDP and TC programs,
> writes a packet with a test payload into the tap device and checks the
> test result. This test ensures that the XDP metadata support in the tun
> driver is enabled and that the metadata size is correctly passed to the
> skb.
>
> See the previous commit ("selftests/bpf: refactor xdp_context_functional
> test and bpf program") for details about the test design.
>
> Signed-off-by: Marcus Wichelmann <marcus.wichelmann@xxxxxxxxxxxxxxxx>
> ---
> .../bpf/prog_tests/xdp_context_test_run.c | 64 +++++++++++++++++++
> 1 file changed, 64 insertions(+)
>
> diff --git a/tools/testing/selftests/bpf/prog_tests/xdp_context_test_run.c b/tools/testing/selftests/bpf/prog_tests/xdp_context_test_run.c
> index 4043f220d7c0..60aad6bd8882 100644
> --- a/tools/testing/selftests/bpf/prog_tests/xdp_context_test_run.c
> +++ b/tools/testing/selftests/bpf/prog_tests/xdp_context_test_run.c
> @@ -8,6 +8,7 @@
> #define TX_NAME "veth1"
> #define TX_NETNS "xdp_context_tx"
> #define RX_NETNS "xdp_context_rx"
> +#define TAP_NAME "tap0"
>
> #define TEST_PAYLOAD_LEN 32
> static const __u8 test_payload[TEST_PAYLOAD_LEN] = {
> @@ -251,3 +252,66 @@ void test_xdp_context_veth(void)
> netns_free(tx_ns);
> }
>
> +void test_xdp_context_tuntap(void)
tap0 is already used by lwt tests, so there is a chance this new test
will clash with it? Should we run your new test in a net namespace
to be safe? Bastien recently added a change where you can make
your test run in a net ns by naming the function test_ns_xxx.