Re: [PATCH bpf-next v2 5/5] selftests/bpf: add testcase for FENTRY/FEXIT with 6+ arguments

From: Menglong Dong
Date: Sun Jun 04 2023 - 22:56:13 EST


On Sat, Jun 3, 2023 at 2:32 AM Alexei Starovoitov
<alexei.starovoitov@xxxxxxxxx> wrote:
>
> On Fri, Jun 2, 2023 at 12:03 AM <menglong8.dong@xxxxxxxxx> wrote:
> >
> > From: Menglong Dong <imagedong@xxxxxxxxxxx>
> >
> > Add test7/test12/test14 in fexit_test.c and fentry_test.c to test the
> > fentry and fexit whose target function have 7/12/14 arguments.
> >
> > And the testcases passed:
> >
> > ./test_progs -t fexit
> > $71 fentry_fexit:OK
> > $73/1 fexit_bpf2bpf/target_no_callees:OK
> > $73/2 fexit_bpf2bpf/target_yes_callees:OK
> > $73/3 fexit_bpf2bpf/func_replace:OK
> > $73/4 fexit_bpf2bpf/func_replace_verify:OK
> > $73/5 fexit_bpf2bpf/func_sockmap_update:OK
> > $73/6 fexit_bpf2bpf/func_replace_return_code:OK
> > $73/7 fexit_bpf2bpf/func_map_prog_compatibility:OK
> > $73/8 fexit_bpf2bpf/func_replace_multi:OK
> > $73/9 fexit_bpf2bpf/fmod_ret_freplace:OK
> > $73/10 fexit_bpf2bpf/func_replace_global_func:OK
> > $73/11 fexit_bpf2bpf/fentry_to_cgroup_bpf:OK
> > $73/12 fexit_bpf2bpf/func_replace_progmap:OK
> > $73 fexit_bpf2bpf:OK
> > $74 fexit_sleep:OK
> > $75 fexit_stress:OK
> > $76 fexit_test:OK
> > Summary: 5/12 PASSED, 0 SKIPPED, 0 FAILED
> >
> > ./test_progs -t fentry
> > $71 fentry_fexit:OK
> > $72 fentry_test:OK
> > $140 module_fentry_shadow:OK
> > Summary: 3/0 PASSED, 0 SKIPPED, 0 FAILED
> >
> > Reviewed-by: Jiang Biao <benbjiang@xxxxxxxxxxx>
> > Signed-off-by: Menglong Dong <imagedong@xxxxxxxxxxx>
> > ---
> > net/bpf/test_run.c | 30 +++++++++++++++-
> > .../testing/selftests/bpf/progs/fentry_test.c | 34 ++++++++++++++++++
> > .../testing/selftests/bpf/progs/fexit_test.c | 35 +++++++++++++++++++
> > 3 files changed, 98 insertions(+), 1 deletion(-)
> >
> > diff --git a/net/bpf/test_run.c b/net/bpf/test_run.c
> > index c73f246a706f..e12a72311eca 100644
> > --- a/net/bpf/test_run.c
> > +++ b/net/bpf/test_run.c
> > @@ -536,6 +536,27 @@ int noinline bpf_fentry_test6(u64 a, void *b, short c, int d, void *e, u64 f)
> > return a + (long)b + c + d + (long)e + f;
> > }
> >
> > +noinline int bpf_fentry_test7(u64 a, void *b, short c, int d, void *e,
> > + u64 f, u64 g)
> > +{
> > + return a + (long)b + c + d + (long)e + f + g;
> > +}
> > +
> > +noinline int bpf_fentry_test12(u64 a, void *b, short c, int d, void *e,
> > + u64 f, u64 g, u64 h, u64 i, u64 j,
> > + u64 k, u64 l)
> > +{
> > + return a + (long)b + c + d + (long)e + f + g + h + i + j + k + l;
> > +}
> > +
> > +noinline int bpf_fentry_test14(u64 a, void *b, short c, int d, void *e,
> > + u64 f, u64 g, u64 h, u64 i, u64 j,
> > + u64 k, u64 l, u64 m, u64 n)
> > +{
> > + return a + (long)b + c + d + (long)e + f + g + h + i + j + k + l +
> > + m + n;
> > +}
>
> Please add test func to bpf_testmod instead of here.

Okay!

Thanks!
Menglong Dong