Re: [PATCH bpf-next 2/2] selftests: bpf: Add missing per-arch include path
On Fri, 27 Sept 2024 at 22:52, Andrii Nakryiko
wrote:
>
> On Fri, Sep 27, 2024 at 6:14 AM Björn Töpel wrote:
> >
> > From: Björn Töpel
> >
> > The prog_tests programs do not include the per-arch tools include
> > path, e.g. tools/arch/riscv/include. Some architectures depend those
> > files to build properly.
> >
> > Include tools/arch/$(SUBARCH)/include in the selftests bpf build.
> >
> > Fixes: 6d74d178fe6e ("tools: Add riscv barrier implementation")
> > Signed-off-by: Björn Töpel
> > ---
> > tools/testing/selftests/bpf/Makefile | 3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> > diff --git a/tools/testing/selftests/bpf/Makefile
> > b/tools/testing/selftests/bpf/Makefile
> > index 365740f24d2e..d6a53afa449f 100644
> > --- a/tools/testing/selftests/bpf/Makefile
> > +++ b/tools/testing/selftests/bpf/Makefile
> > @@ -10,6 +10,7 @@ TOOLSDIR := $(abspath ../../..)
> > LIBDIR := $(TOOLSDIR)/lib
> > BPFDIR := $(LIBDIR)/bpf
> > TOOLSINCDIR := $(TOOLSDIR)/include
> > +TOOLSARCHINCDIR := $(TOOLSDIR)/arch/$(SRCARCH)/include
> > BPFTOOLDIR := $(TOOLSDIR)/bpf/bpftool
> > APIDIR := $(TOOLSINCDIR)/uapi
> > ifneq ($(O),)
> > @@ -44,7 +45,7 @@ CFLAGS += -g $(OPT_FLAGS) -rdynamic
> > \
> > -Wall -Werror -fno-omit-frame-pointer \
> > $(GENFLAGS) $(SAN_CFLAGS) $(LIBELF_CFLAGS)\
> > -I$(CURDIR) -I$(INCLUDE_DIR) -I$(GENDIR) -I$(LIBDIR) \
> > - -I$(TOOLSINCDIR) -I$(APIDIR) -I$(OUTPUT)
> > + -I$(TOOLSINCDIR) -I$(TOOLSARCHINCDIR) -I$(APIDIR) -I$(OUTPUT)
>
> Eduard was going to switch selftests to use kernel UAPI headers, I
> wonder if we should do just that and then set up arch-specific
> includes from kernel (not from tools/) as well?
In the end it's up to you guys! This is broken on Linus' master for
RISC-V now, so from my (RISC-V) perspective having a workaround sooner
than later would be nice!
@Eduard Do you have any patches around? If so, I can take them for a spin on RV.
Björn
Re: [PATCH bpf-next 2/2] selftests: bpf: Add missing per-arch include path
On Fri, Sep 27, 2024 at 6:14 AM Björn Töpel wrote:
>
> From: Björn Töpel
>
> The prog_tests programs do not include the per-arch tools include
> path, e.g. tools/arch/riscv/include. Some architectures depend those
> files to build properly.
>
> Include tools/arch/$(SUBARCH)/include in the selftests bpf build.
>
> Fixes: 6d74d178fe6e ("tools: Add riscv barrier implementation")
> Signed-off-by: Björn Töpel
> ---
> tools/testing/selftests/bpf/Makefile | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/bpf/Makefile
> b/tools/testing/selftests/bpf/Makefile
> index 365740f24d2e..d6a53afa449f 100644
> --- a/tools/testing/selftests/bpf/Makefile
> +++ b/tools/testing/selftests/bpf/Makefile
> @@ -10,6 +10,7 @@ TOOLSDIR := $(abspath ../../..)
> LIBDIR := $(TOOLSDIR)/lib
> BPFDIR := $(LIBDIR)/bpf
> TOOLSINCDIR := $(TOOLSDIR)/include
> +TOOLSARCHINCDIR := $(TOOLSDIR)/arch/$(SRCARCH)/include
> BPFTOOLDIR := $(TOOLSDIR)/bpf/bpftool
> APIDIR := $(TOOLSINCDIR)/uapi
> ifneq ($(O),)
> @@ -44,7 +45,7 @@ CFLAGS += -g $(OPT_FLAGS) -rdynamic
> \
> -Wall -Werror -fno-omit-frame-pointer \
> $(GENFLAGS) $(SAN_CFLAGS) $(LIBELF_CFLAGS)\
> -I$(CURDIR) -I$(INCLUDE_DIR) -I$(GENDIR) -I$(LIBDIR) \
> - -I$(TOOLSINCDIR) -I$(APIDIR) -I$(OUTPUT)
> + -I$(TOOLSINCDIR) -I$(TOOLSARCHINCDIR) -I$(APIDIR) -I$(OUTPUT)
Eduard was going to switch selftests to use kernel UAPI headers, I
wonder if we should do just that and then set up arch-specific
includes from kernel (not from tools/) as well?
> LDFLAGS += $(SAN_LDFLAGS)
> LDLIBS += $(LIBELF_LIBS) -lz -lrt -lpthread
>
> --
> 2.43.0
>
[PATCH bpf-next 2/2] selftests: bpf: Add missing per-arch include path
From: Björn Töpel
The prog_tests programs do not include the per-arch tools include
path, e.g. tools/arch/riscv/include. Some architectures depend those
files to build properly.
Include tools/arch/$(SUBARCH)/include in the selftests bpf build.
Fixes: 6d74d178fe6e ("tools: Add riscv barrier implementation")
Signed-off-by: Björn Töpel
---
tools/testing/selftests/bpf/Makefile | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/tools/testing/selftests/bpf/Makefile
b/tools/testing/selftests/bpf/Makefile
index 365740f24d2e..d6a53afa449f 100644
--- a/tools/testing/selftests/bpf/Makefile
+++ b/tools/testing/selftests/bpf/Makefile
@@ -10,6 +10,7 @@ TOOLSDIR := $(abspath ../../..)
LIBDIR := $(TOOLSDIR)/lib
BPFDIR := $(LIBDIR)/bpf
TOOLSINCDIR := $(TOOLSDIR)/include
+TOOLSARCHINCDIR := $(TOOLSDIR)/arch/$(SRCARCH)/include
BPFTOOLDIR := $(TOOLSDIR)/bpf/bpftool
APIDIR := $(TOOLSINCDIR)/uapi
ifneq ($(O),)
@@ -44,7 +45,7 @@ CFLAGS += -g $(OPT_FLAGS) -rdynamic
\
-Wall -Werror -fno-omit-frame-pointer \
$(GENFLAGS) $(SAN_CFLAGS) $(LIBELF_CFLAGS)\
-I$(CURDIR) -I$(INCLUDE_DIR) -I$(GENDIR) -I$(LIBDIR) \
- -I$(TOOLSINCDIR) -I$(APIDIR) -I$(OUTPUT)
+ -I$(TOOLSINCDIR) -I$(TOOLSARCHINCDIR) -I$(APIDIR) -I$(OUTPUT)
LDFLAGS += $(SAN_LDFLAGS)
LDLIBS += $(LIBELF_LIBS) -lz -lrt -lpthread
--
2.43.0

