Re: [PATCH bpf-next v7 3/3] selftests/bpf: add testcase for TRACING with 6+ arguments

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Jun 26, 2023 at 10:47 PM Daniel Borkmann <daniel@xxxxxxxxxxxxx> wrote:
>
> On 6/22/23 9:57 AM, menglong8.dong@xxxxxxxxx wrote:
> > From: Menglong Dong <imagedong@xxxxxxxxxxx>
>
> (CC'ing also Florent wrt arm64)
>
> > Add test9/test10 in fexit_test.c and fentry_test.c to test the fentry
> > and fexit whose target function have 7/11 arguments.
> >
> > Correspondingly, add bpf_testmod_fentry_test7() and
> > bpf_testmod_fentry_test11() to bpf_testmod.c
> >
> > Meanwhile, add bpf_modify_return_test2() to test_run.c to test the
> > MODIFY_RETURN with 7 arguments.
> >
> > Add bpf_testmod_test_struct_arg_7/bpf_testmod_test_struct_arg_7 in
> > bpf_testmod.c to test the struct in the arguments.
> >
> > And the testcases passed:
> >
> > ./test_progs -t fexit
> > Summary: 5/12 PASSED, 0 SKIPPED, 0 FAILED
> >
> > ./test_progs -t fentry
> > Summary: 3/0 PASSED, 0 SKIPPED, 0 FAILED
> >
> > ./test_progs -t modify_return
> > Summary: 1/0 PASSED, 0 SKIPPED, 0 FAILED
> >
> > ./test_progs -t tracing_struct
> > Summary: 1/0 PASSED, 0 SKIPPED, 0 FAILED
> >
> > Signed-off-by: Menglong Dong <imagedong@xxxxxxxxxxx>
> > Acked-by: Yonghong Song <yhs@xxxxxx>
> > ---
> > v6:
> > - add testcases to tracing_struct.c instead of fentry_test.c and
> >    fexit_test.c
> > v5:
> > - add testcases for MODIFY_RETURN
> > v4:
> > - use different type for args in bpf_testmod_fentry_test{7,12}
> > - add testcase for grabage values in ctx
> > v3:
> > - move bpf_fentry_test{7,12} to bpf_testmod.c and rename them to
> >    bpf_testmod_fentry_test{7,12} meanwhile
> > - get return value by bpf_get_func_ret() in
> >    "fexit/bpf_testmod_fentry_test12", as we don't change ___bpf_ctx_cast()
> >    in this version
> > ---
> >   net/bpf/test_run.c                            | 23 ++++++--
> >   .../selftests/bpf/bpf_testmod/bpf_testmod.c   | 49 ++++++++++++++++-
> >   .../selftests/bpf/prog_tests/fentry_fexit.c   |  4 +-
> >   .../selftests/bpf/prog_tests/fentry_test.c    |  2 +
> >   .../selftests/bpf/prog_tests/fexit_test.c     |  2 +
> >   .../selftests/bpf/prog_tests/modify_return.c  | 20 ++++++-
> >   .../selftests/bpf/prog_tests/tracing_struct.c | 19 +++++++
> >   .../testing/selftests/bpf/progs/fentry_test.c | 32 +++++++++++
> >   .../testing/selftests/bpf/progs/fexit_test.c  | 33 ++++++++++++
> >   .../selftests/bpf/progs/modify_return.c       | 40 ++++++++++++++
> >   .../selftests/bpf/progs/tracing_struct.c      | 54 +++++++++++++++++++
> >   11 files changed, 271 insertions(+), 7 deletions(-)
>
> This triggers test failures on arm64 in BPF CI given the additions are
> not yet supported there:
>
> https://github.com/kernel-patches/bpf/actions/runs/5371020820/jobs/9743606263
> https://github.com/kernel-patches/bpf/actions/runs/5371020820/jobs/9743606326
>
> [...]
> Notice: Success: 362/3077, Skipped: 12, Failed: 3
> Error: #71 fentry_fexit
>    Error: #71 fentry_fexit
>    test_fentry_fexit:PASS:fentry_skel_load 0 nsec
>    test_fentry_fexit:PASS:fexit_skel_load 0 nsec
>    test_fentry_fexit:FAIL:fentry_attach unexpected error: -1 (errno 524)
> Error: #72 fentry_test
>    Error: #72 fentry_test
>    test_fentry_test:PASS:fentry_skel_load 0 nsec
>    fentry_test:FAIL:fentry_attach unexpected error: -1 (errno 524)
>    test_fentry_test:FAIL:fentry_first_attach unexpected error: -1 (errno 524)
> Error: #76 fexit_test
>    Error: #76 fexit_test
>    test_fexit_test:PASS:fexit_skel_load 0 nsec
>    fexit_test:FAIL:fexit_attach unexpected error: -1 (errno 524)
>    test_fexit_test:FAIL:fexit_first_attach unexpected error: -1 (errno 524)
> [...]
>
> I think probably the best way would be to separate the new test cases and
> then update tools/testing/selftests/bpf/DENYLIST.aarch64 to exclude them
> from being run on arm64 until support gets added there too.

Good idea! I didn't know the existence of DENYLIST,
or I'll already do it like this.

I'll send a new version.

Thanks!
Menglong Dong

>
> Thanks,
> Daniel





[Index of Archives]     [Linux Samsung SoC]     [Linux Rockchip SoC]     [Linux Actions SoC]     [Linux for Synopsys ARC Processors]     [Linux NFS]     [Linux NILFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]


  Powered by Linux