Re: [PATCH v8 bpf-next 0/7] bpf: tailcalls in BPF subprograms

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

 



On Wed, Sep 23, 2020 at 9:43 AM Lorenz Bauer <lmb@xxxxxxxxxxxxxx> wrote:
>
> On Wed, 23 Sep 2020 at 17:24, Andrii Nakryiko <andrii.nakryiko@xxxxxxxxx> wrote:
> >
> > On Wed, Sep 23, 2020 at 9:12 AM Lorenz Bauer <lmb@xxxxxxxxxxxxxx> wrote:
> > >
> > > On Fri, 18 Sep 2020 at 04:26, Alexei Starovoitov
> > > <alexei.starovoitov@xxxxxxxxx> wrote:
> > > [...]
> > > >
> > > > Lorenz,
> > > > if you can test it on cloudflare progs would be awesome.
> > >
> > > Our programs all bpf_tail_call from the topmost function, so no calls
> > > from subprogs. I stripped out our FORCE_INLINE flag, recompiled and
> > > ran our testsuite. cls_redirect.c (also in the kernel selftests) has a
> > > test failure that I currently can't explain, but I don't have the time
> > > to look at it in detail right now.
> > >
> >
> > I've already converted test_cls_redirect.c in selftest to have
> > __noinline variant. And it works fine. There are only 4 helper
> > functions that can't be converted to a sub-program (pkt_parse_ipv4,
> > pkt_parse_ipv6, and three buffer manipulation helpers) because they
> > are accepting a pointer to a stack from a calling function, which
> > won't work with subprograms. But all the other functions were
> > trivially converted to __noinline and keep working.
>
> Yeah, that is very possible. Keep in mind though that our internal
> version has since become more complex, and also has a more
> comprehensive test suite. I wasn't sounding the alarms, it's just an
> FYI that I appreciate the work that went into this and have taken a
> look, but that I need to do some more digging :)
>


> cls_redirect.c (also in the kernel selftests) has a test failure that

This sounded like there is a kernel selftest failure in cls_redirect.c
after you removed FORCE_INLINE flag. So I was curious where the new
failure is and whether it's in those 5 functions that just can't be
not-always_inlined.


> --
> Lorenz Bauer  |  Systems Engineer
> 6th Floor, County Hall/The Riverside Building, SE1 7PB, UK
>
> www.cloudflare.com



[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