Re: Kernel 5.5.4 build fail for BPF-selftests with latest LLVM

From: Andrii Nakryiko
Date: Wed Feb 19 2020 - 13:38:59 EST


On Wed, Feb 19, 2020 at 10:29 AM Jesper Dangaard Brouer
<brouer@xxxxxxxxxx> wrote:
>
> On Wed, 19 Feb 2020 09:38:50 -0800
> Andrii Nakryiko <andrii.nakryiko@xxxxxxxxx> wrote:
>
> > On Wed, Feb 19, 2020 at 9:04 AM Jesper Dangaard Brouer
> > <brouer@xxxxxxxxxx> wrote:
> > >
> > > On Wed, 19 Feb 2020 08:41:27 -0800
> > > Alexei Starovoitov <alexei.starovoitov@xxxxxxxxx> wrote:
> > >
> > > > On Wed, Feb 19, 2020 at 4:30 AM Jesper Dangaard Brouer
> > > > <brouer@xxxxxxxxxx> wrote:
> > > > >
> > > > > I'm willing to help out, such that we can do either version or feature
> > > > > detection, to either skip compiling specific test programs or at least
> > > > > give users a proper warning of they are using a too "old" LLVM version.
> > > > ...
> > > > > progs/test_core_reloc_bitfields_probed.c:47:13: error: use of unknown builtin '__builtin_preserve_field_info' [-Wimplicit-function-declaration]
> > > > > out->ub1 = BPF_CORE_READ_BITFIELD_PROBED(in, ub1);
> > > >
> > > > imo this is proper warning message already.
> > >
> > > This is an error, not a warning. The build breaks as the make process stops.
> > >
> >
> > Latest Clang was a requirement for building and running all selftests
> > for a long time now. There were few previous discussions on mailing
> > list about this and each time the conclusion was the same: latest
> > Clang is a requirement for BPF selftests.
>
> The latest Clang is 9.0.1, and it doesn't build with that.

Latest as in "latest built from sources".

>
> --
> Best regards,
> Jesper Dangaard Brouer
> MSc.CS, Principal Kernel Engineer at Red Hat
> LinkedIn: http://www.linkedin.com/in/brouer
>