Re: linux-next: build failure after merge of the net tree

From: Jiri Olsa
Date: Tue Feb 14 2017 - 04:19:48 EST


On Tue, Feb 14, 2017 at 07:42:21AM +0100, Ingo Molnar wrote:
>
> * Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:
>
> > Hi all,
> >
> > After merging the net tree, today's linux-next build (powerpc64le perf)
> > failed like this:
> >
> > Warning: tools/include/uapi/linux/bpf.h differs from kernel
> > bpf.c: In function 'bpf_prog_attach':
> > bpf.c:180:6: error: 'union bpf_attr' has no member named 'attach_flags'; did you mean 'map_flags'?
> > attr.attach_flags = flags;
> > ^
> >
> > Caused by commit
> >
> > 7f677633379b ("bpf: introduce BPF_F_ALLOW_OVERRIDE flag")
> >
> > Unfortunately, the perf header files are kept separate from the kernel
> > header files proper and are not automatically copied over :-(
>
> No, that's wrong, the problem is not that headers were not shared, the problem is
> that a tooling interdependency was not properly tested *and* that the dependency
> was not properly implemented in the build system either.
>
> Note that we had similar build breakages when include headers _were_ shared as
> well, so sharing the headers would only have worked around this particular bug and
> would have introduced fragility in other places...
>
> The best, most robust solution in this particular case would be to fix the
> (tooling) build system to express the dependency, that would have shown the build
> failure right when the modification was done.

so we have the warning now:
Warning: tools/include/uapi/linux/bpf.h differs from kernel

do you want to change it into the build failure?

jirka