Hi,
On 10/29/25 7:54 PM, Alexei Starovoitov wrote:
> On Wed, Oct 29, 2025 at 6:52 AM Bastien Curutchet (eBPF Foundation)
> <bastien.curutchet@bootlin.com> wrote:
>>
>> Hi all,
>>
>> The test_xsk.sh script covers many AF_XDP use cases. The tests it runs
>> are defined in xksxceiver.c. Since this script is used to test real
>> hardware, the goal here is to leave it as it is, and only integrate the
>> tests that run on veth peers into the test_progs framework.
>>
>> I've looked into what could improve the speed in the CI:
>> - some tests are skipped when run on veth peers in a VM (because they
>> rely on huge page allocation or HW rings). This skipping logic still
>> takes some time and can be easily avoided.
>> - the TEARDOWN test is quite long (several seconds on its own) because
>> it runs the same test 10 times in a row to ensure the teardown process
>> works properly
>>
>> With theses tests fully skipped in the CI and the veth setup done only
>> once for each mode (DRV / SKB), the execution time is reduced to about 5
>> seconds on my setup.
>> ```
>> $ tools/testing/selftests/bpf/vmtest.sh -d $HOME/ebpf/output-regular/ -- time ./test_progs -t xsk
>> [...]
>> real 0m 5.04s
>> user 0m 0.38s
>> sys 0m 1.61s
>
> This is fine. I see
> Summary: 2/48 PASSED, 0 SKIPPED, 0 FAILED
>
> real 0m8.165s
> user 0m1.795s
> sys 0m4.740s
>
> on debug kernel with kasan which is ok.
> > But it conflicts with itself :(
>
> $ test_progs -j -t xsk
>
> All error logs:
> setup_veth:FAIL:ip link add veth0 numtxqueues 4 numrxqueues 4 type
> veth peer name veth1 numtxqueues 4 numrxqueues 4 unexpected error: 512
> (errno 2)
> test_xsk_drv:FAIL:setup veth unexpected error: -1 (errno 2)
> #664 xsk_drv:FAIL
> Summary: 1/24 PASSED, 0 SKIPPED, 1 FAILED
>
> Pls fix the parallel run and not by adding "_serial", of course.
Oups, in my quest for speed I removed the 'test_ns' prefix. It didn't
seem necessary since all tests are run at once, but I forgot about
parallel execution between the DRV and SKB modes..
Sorry about this, I'll put back the 'test_ns' prefix.
It will be a good opportunity to address some of the AI feedback I received.
Best regards,
Bastien