On Tue, Apr 5, 2022 at 12:57 AM Nathan Chancellor <nathan@xxxxxxxxxx> wrote: > > On Mon, Apr 04, 2022 at 03:28:41PM +0530, Naresh Kamboju wrote: > > Linux next-20220404 riscv defconfig builds failed. > > > > Regressions found on riscv: > > - riscv-riscv-clang-14-defconfig > > - riscv-riscv-gcc-10-defconfig > > - riscv-riscv-clang-13-defconfig > > - riscv-riscv-clang-12-defconfig > > - riscv-riscv-clang-11-defconfig > > - riscv-riscv-gcc-11-defconfig > > - riscv-riscv-gcc-8-defconfig > > - riscv-riscv-gcc-9-defconfig > > - riscv-riscv-clang-nightly-defconfig > > > > > > arch/riscv/kernel/compat_signal.c:7:10: fatal error: > > linux/tracehook.h: No such file or directory > > 7 | #include <linux/tracehook.h> > > | ^~~~~~~~~~~~~~~~~~~ > > compilation terminated. > > make[3]: *** [scripts/Makefile.build:289: > > arch/riscv/kernel/compat_signal.o] Error 1 > > For what it's worth, I also see: > > $ make -skj"$(nproc)" ARCH=riscv CROSS_COMPILE=riscv64-linux-gnu- defconfig all > arch/riscv/kernel/compat_vdso/compat_vdso.lds.S:3:10: fatal error: ../vdso/vdso.lds.S: No such file or directory > 3 | #include <../vdso/vdso.lds.S> > | ^~~~~~~~~~~~~~~~~~~~ > compilation terminated. > make[2]: *** [scripts/Makefile.build:462: arch/riscv/kernel/compat_vdso/compat_vdso.lds] Error 1 > arch/riscv/kernel/compat_vdso/rt_sigreturn.S:3:10: fatal error: ../vdso/rt_sigreturn.S: No such file or directory > 3 | #include <../vdso/rt_sigreturn.S> > | ^~~~~~~~~~~~~~~~~~~~~~~~ > compilation terminated. > arch/riscv/kernel/compat_vdso/note.S:3:10: fatal error: ../vdso/note.S: No such file or directory > 3 | #include <../vdso/note.S> > | ^~~~~~~~~~~~~~~~ > compilation terminated. > arch/riscv/kernel/compat_vdso/getcpu.S:3:10: fatal error: ../vdso/getcpu.S: No such file or directory > 3 | #include <../vdso/getcpu.S> > | ^~~~~~~~~~~~~~~~~~ > compilation terminated. > make[2]: *** [arch/riscv/kernel/compat_vdso/Makefile:43: arch/riscv/kernel/compat_vdso/rt_sigreturn.o] Error 1 > make[2]: *** [arch/riscv/kernel/compat_vdso/Makefile:43: arch/riscv/kernel/compat_vdso/note.o] Error 1 > make[2]: *** [arch/riscv/kernel/compat_vdso/Makefile:43: arch/riscv/kernel/compat_vdso/getcpu.o] Error 1 > arch/riscv/kernel/compat_vdso/flush_icache.S:3:10: fatal error: ../vdso/flush_icache.S: No such file or directory > 3 | #include <../vdso/flush_icache.S> > | ^~~~~~~~~~~~~~~~~~~~~~~~ > compilation terminated. > make[2]: *** [arch/riscv/kernel/compat_vdso/Makefile:43: arch/riscv/kernel/compat_vdso/flush_icache.o] Error 1 > > I am guessing this code was never tested with $(srctree) == $(objtree). Thx for pointing it out: I always use: make -skj"$(nproc)" ARCH=riscv CROSS_COMPILE=riscv64-unknown-linux-gnu- EXTRA_CFLAGS+=-g O=../build-riscv/ defconfig all When I change to: make -skj"$(nproc)" ARCH=riscv CROSS_COMPILE=riscv64-unknown-linux-gnu- EXTRA_CFLAGS+=-g defconfig all I got your problem. > > Cheers, > Nathan -- Best Regards Guo Ren ML: https://lore.kernel.org/linux-csky/