Re: [next] riscv: Linux next-20220404 riscv defconfig builds failed.

From: Nathan Chancellor
Date: Mon Apr 04 2022 - 17:38:53 EST


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).

Cheers,
Nathan