Messages in this thread | | | Subject | 回复:[PATCH v2] samples/bpf: Fix compilation failure for samples/bpf on LoongArch Fedora | From | "" <> | Date | Tue, 11 Jul 2023 18:39:03 +0800 |
| |
在 2023-07-11星期二的 09:39 +0200,Daniel Borkmann写道: > On 7/10/23 7:54 AM, Huacai Chen wrote: > > Reviewed-by: Huacai Chen <chenhuacai@loongson.cn> > > > > On Mon, Jul 10, 2023 at 1:34PM Haoran Jiang < > > jianghaoran@kylinos.cn> wrote: > > > When building the latest samples/bpf on LoongArch Fedora > > > > > > make M=samples/bpf > > > > > > There are compilation errors as follows: > > > > > > In file included from ./linux/samples/bpf/sockex2_kern.c:2: > > > In file included from ./include/uapi/linux/in.h:25: > > > In file included from ./include/linux/socket.h:8: > > > In file included from ./include/linux/uio.h:9: > > > In file included from ./include/linux/thread_info.h:60: > > > In file included from > > > ./arch/loongarch/include/asm/thread_info.h:15: > > > In file included from > > > ./arch/loongarch/include/asm/processor.h:13: > > > In file included from ./arch/loongarch/include/asm/cpu-info.h:11: > > > ./arch/loongarch/include/asm/loongarch.h:13:10: fatal error: > > > 'larchintrin.h' file not found > > > ^~~~~~~~~~~~~~~ > > > 1 error generated. > > > > > > larchintrin.h is included in /usr/lib64/clang/14.0.6/include, > > > and the header file location is specified at compile time. > > > > > > Test on LoongArch Fedora: > > > https://github.com/fedora-remix-loongarch/releases-info > > > > > > Signed-off-by: Haoran Jiang <jianghaoran@kylinos.cn> > > > > > > --- > > > v2: > > > use LoongArch instead of Loongarch in the title and commit > > > message. > > > --- > > > samples/bpf/Makefile | 2 +- > > > 1 file changed, 1 insertion(+), 1 deletion(-) > > > > > > diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile > > > index 615f24ebc49c..b301796a3862 100644 > > > --- a/samples/bpf/Makefile > > > +++ b/samples/bpf/Makefile > > > @@ -434,7 +434,7 @@ $(obj)/%.o: $(src)/%.c > > > @echo " CLANG-bpf " $@ > > > $(Q)$(CLANG) $(NOSTDINC_FLAGS) $(LINUXINCLUDE) > > > $(BPF_EXTRA_CFLAGS) \ > > > -I$(obj) > > > -I$(srctree)/tools/testing/selftests/bpf/ \ > > > - -I$(LIBBPF_INCLUDE) \ > > > + -I$(LIBBPF_INCLUDE) $(CLANG_SYS_INCLUDES) \ > > There's still one location in XDP_SAMPLE_CFLAGS, do we need the > $(CLANG_SYS_INCLUDES) > there as well?
XDP_SAMPLE_CFLAGS only affects the compilation of xdp_sample_user.c. It is a user-mode application,the associated header files of clang are not used. larchintrin.h will only be included in *.bpf.c and *kern.c files.So I don't think $(CLANG_SYS_INCLUDES) needs to be included here.
> > > > -D__KERNEL__ -D__BPF_TRACING__ -Wno-unused-value > > > -Wno-pointer-sign \ > > > -D__TARGET_ARCH_$(SRCARCH) -Wno-compare- > > > distinct-pointer-types \ > > > -Wno-gnu-variable-sized-type-not-at-end \ > > > -- > > > 2.27.0 > > > > > >
| |