On 05/02/2018 01:05 PM, Sirio Balmelli wrote: > On some systems selftests fail to build, missing the following headers: > > asm/byteorder.h > asm/socket.h > asm/swab.h > > In the specific case of Ubuntu, this is because the files are in > '/usr/include/x86_64-linux-gnu' (see <https://wiki.ubuntu.com/MultiarchSpec>) > which is both architecture- and distro-specific. > > The solution is to add $(KERNEL)/usr/include to the Makefile, > so the build references these from the current kernel build > and not the running system. > > Signed-off-by: Sirio Balmelli <si...@b-ad.ch> > --- > tools/testing/selftests/bpf/Makefile | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/tools/testing/selftests/bpf/Makefile > b/tools/testing/selftests/bpf/Makefile > index 9d76218..1ec09c6 100644 > --- a/tools/testing/selftests/bpf/Makefile > +++ b/tools/testing/selftests/bpf/Makefile > @@ -84,7 +84,10 @@ else > CPU ?= generic > endif > > -CLANG_FLAGS = -I. -I./include/uapi -I../../../include/uapi \ > +# we are in 'tools/testing/selftests/bpf' > +KERNEL=../../../.. > +TOOLS=../../.. > +CLANG_FLAGS = -I. -I./include/uapi -I$(TOOLS)/include/uapi > -I$(KERNEL)/usr/include \ > -Wno-compare-distinct-pointer-types
First patch in the series looks good to me, thanks Sirio! Problem with this one is still as described earlier in: http://patchwork.ozlabs.org/patch/906505/ This will break people's setup and build bots since they expect headers to be available from tools infra and not -I<kernel-root>/usr/include/ via headers_install, so adding the latter is not possible (unless Arnaldo agrees to rework the whole tools include infra in a better way). This means the only other option we have is to pull them into tools/ instead, even if this results in a lot of duplication, but whether we like it or not that is the way the tools/include stuff was designed along with perf, meaning unless there's a fundamental rework, we will have to stick to it. Thanks, Daniel > $(OUTPUT)/test_l4lb_noinline.o: CLANG_FLAGS += -fno-inline >