[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <e126b2cd-b8c7-5b04-324e-1bae06d7c22e@linux.dev>
Date: Fri, 18 Nov 2022 10:57:31 -0800
From: Martin KaFai Lau <martin.lau@...ux.dev>
To: Wang Yufen <wangyufen@...wei.com>
Cc: davem@...emloft.net, edumazet@...gle.com, kuba@...nel.org,
pabeni@...hat.com, shuah@...nel.org, andrii@...nel.org,
mykolal@...com, ast@...nel.org, daniel@...earbox.net,
netdev@...r.kernel.org, bpf@...r.kernel.org
Subject: Re: [PATCH v2 2/2] selftests/net: fix opening object file failed
On 11/15/22 2:23 AM, Wang Yufen wrote:
> The program file used in the udpgro_frglist testcase is "../bpf/nat6to4.o",
> but the actual nat6to4.o file is in "bpf/" not "../bpf".
> The following error occurs:
> Error opening object ../bpf/nat6to4.o: No such file or directory
> Cannot initialize ELF context!
> Unable to load program
>
> In addition, all the kernel bpf source files are centred under the
> subdir "progs" after commit bd4aed0ee73c ("selftests: bpf: centre
> kernel bpf objects under new subdir "progs""). So mv nat6to4.c to
> "../bpf/progs" and use "../bpf/nat6to4.bpf.o". And also move the
> test program to selftests/bpf.
>
> Fixes: edae34a3ed92 ("selftests net: add UDP GRO fraglist + bpf self-tests")
> Signed-off-by: Wang Yufen <wangyufen@...wei.com>
> ---
> tools/testing/selftests/bpf/Makefile | 7 +-
> tools/testing/selftests/bpf/in_netns.sh | 23 +
> .../testing/selftests/bpf/progs/nat6to4_egress4.c | 184 ++++++
> .../testing/selftests/bpf/progs/nat6to4_ingress6.c | 149 +++++
> tools/testing/selftests/bpf/test_udpgro_frglist.sh | 110 ++++
Love to have more tests in the BPF CI which is run continuously: eg:
https://github.com/kernel-patches/bpf/actions/runs/3491826279/jobs/5845219757
However, script like this does not get run in CI. test_progs has a more
consistent error output and ensures some environment cleanup before running the
next test. Please take some effort to adapt this test to the bpf/test_progs.c
framework which had already been suggested in the previous revision.
Try to run ./test_progs under the bpf selftests directory. There are existing
examples to setup/switch net ns and test_progs has logic in place to ensure the
netns is restored before running the next selftest. eg. take a look at
bpf/prog_tests/{test_tunnel,tc_redirect}.c.
> tools/testing/selftests/bpf/udpgso_bench_rx.c | 409 ++++++++++++
> tools/testing/selftests/bpf/udpgso_bench_tx.c | 712 +++++++++++++++++++++
hmmm, it is a copy? Does it need all the bench marking feature (e.g. all the cmd
args)? If not, please simply because I expect the test_udpgro_frglist.sh,
udpgso_bench_rx.c, and udpgso_bench_tx.c will become one file
'selftests/bpf/prog_tests/udpgrp_frglish.c' which loads the bpf prog and
generates traffic to exercise the bpf prog.
Please tag it with bpf-next in the next spin which Saeed has also mentioned in
another thread.
> tools/testing/selftests/net/Makefile | 2 -
> tools/testing/selftests/net/bpf/Makefile | 14 -
> tools/testing/selftests/net/bpf/nat6to4.c | 285 ---------
> tools/testing/selftests/net/udpgro_frglist.sh | 103 ---
> 11 files changed, 1592 insertions(+), 406 deletions(-)
> create mode 100755 tools/testing/selftests/bpf/in_netns.sh
> create mode 100644 tools/testing/selftests/bpf/progs/nat6to4_egress4.c
> create mode 100644 tools/testing/selftests/bpf/progs/nat6to4_ingress6.c
> create mode 100755 tools/testing/selftests/bpf/test_udpgro_frglist.sh
> create mode 100644 tools/testing/selftests/bpf/udpgso_bench_rx.c
> create mode 100644 tools/testing/selftests/bpf/udpgso_bench_tx.c
> delete mode 100644 tools/testing/selftests/net/bpf/Makefile
> delete mode 100644 tools/testing/selftests/net/bpf/nat6to4.c
> delete mode 100755 tools/testing/selftests/net/udpgro_frglist.sh
Powered by blists - more mailing lists