5.19-rc1 build fails at scripts/check-local-export

From: Tetsuo Handa
Date: Mon Jun 06 2022 - 01:50:15 EST


Hello.

Commit 31cb50b5590fe911 ("kbuild: check static EXPORT_SYMBOL* by script
instead of modpost") introduced scripts/check-local-export but it fails
in my CentOS 7 environment.

$ rpm -q binutils bash
binutils-2.27-44.base.el7_9.1.x86_64
bash-4.2.46-35.el7_9.x86_64
$ make
SYSHDR arch/x86/include/generated/uapi/asm/unistd_32.h
SYSHDR arch/x86/include/generated/uapi/asm/unistd_64.h
SYSHDR arch/x86/include/generated/uapi/asm/unistd_x32.h
SYSTBL arch/x86/include/generated/asm/syscalls_32.h
SYSHDR arch/x86/include/generated/asm/unistd_32_ia32.h
SYSHDR arch/x86/include/generated/asm/unistd_64_x32.h
SYSTBL arch/x86/include/generated/asm/syscalls_64.h
HOSTCC scripts/basic/fixdep
HOSTCC arch/x86/tools/relocs_32.o
HOSTCC arch/x86/tools/relocs_64.o
HOSTCC arch/x86/tools/relocs_common.o
HOSTLD arch/x86/tools/relocs
HOSTCC scripts/genksyms/genksyms.o
YACC scripts/genksyms/parse.tab.[ch]
HOSTCC scripts/genksyms/parse.tab.o
LEX scripts/genksyms/lex.lex.c
HOSTCC scripts/genksyms/lex.lex.o
HOSTLD scripts/genksyms/genksyms
HOSTCC scripts/bin2c
HOSTCC scripts/kallsyms
HOSTCC scripts/sorttable
HOSTCC scripts/asn1_compiler
HOSTCC scripts/mod/mk_elfconfig
CC scripts/mod/empty.o
./scripts/check-local-export: line 54: wait: pid 17328 is not a child of this shell
make[2]: *** [scripts/mod/empty.o] Error 127
make[2]: *** Deleting file `scripts/mod/empty.o'
make[1]: *** [prepare0] Error 2
make: *** [__sub-make] Error 2

Is below change OK for you?

diff --git a/scripts/check-local-export b/scripts/check-local-export
index da745e2743b7..1631c79558b7 100755
--- a/scripts/check-local-export
+++ b/scripts/check-local-export
@@ -51,7 +51,7 @@ do
done < <(${NM} ${1} 2>/dev/null || { echo "${0}: ${NM} failed" >&2; false; } )

# Catch error in the process substitution
-wait $!
+wait $! 2>/dev/null || :

for name in "${export_symbols[@]}"
do