Re: [PATCH] ppc: Fix BPF JIT for ABIv2

From: Michael Ellerman
Date: Wed Jun 22 2016 - 00:06:53 EST


On Tue, 2016-06-21 at 08:45 -0700, Alexei Starovoitov wrote:
> On 6/21/16 7:47 AM, Thadeu Lima de Souza Cascardo wrote:
> > > >
> > > > The calling convention is different with ABIv2 and so we'll need changes
> > > > in bpf_slow_path_common() and sk_negative_common().
> > >
> > > How big would those changes be? Do we know?
> > >
> > > How come no one reported this was broken previously? This is the first I've
> > > heard of it being broken.
> > >
> >
> > I just heard of it less than two weeks ago, and only could investigate it last
> > week, when I realized mainline was also affected.
> >
> > It looks like the little-endian support for classic JIT were done before the
> > conversion to ABIv2. And as JIT is disabled by default, no one seems to have
> > exercised it.
>
> it's not a surprise unfortunately. The JITs that were written before
> test_bpf.ko was developed were missing corner cases. Typical tcpdump
> would be fine, but fragmented packets, negative offsets and
> out-out-bounds wouldn't be handled correctly.
> I'd suggest to validate the stable backport with test_bpf as well.

OK thanks.

I have been running seltests/net/test_bpf, but I realise now it doesn't enable
the JIT.

cheers