[PATCH] x86/syscalls: clear 'offset' and 'prefix' in case they are set in env

From: Masahiro Yamada
Date: Tue May 25 2021 - 07:56:19 EST


If the environment variable 'prefix' is set on the build host,
it is wrongly used as syscall macro prefixes.

$ export prefix=/usr
$ make -s defconfig all
In file included from ./arch/x86/include/asm/unistd.h:20,
from <stdin>:2:
./arch/x86/include/generated/uapi/asm/unistd_64.h:4:9: warning: missing whitespace after the macro name
4 | #define __NR_/usrread 0
| ^~~~~

arch/x86/entry/syscalls/Makefile should clear 'offset' and 'prefix'.

Link: https://lore.kernel.org/lkml/CA+G9fYvFXTHPKwasdVidF7qEHdqwRht8Xg6qm6CCLL0HGaU1ew@xxxxxxxxxxxxxx/
Reported-by: Naresh Kamboju <naresh.kamboju@xxxxxxxxxx>
Fixes: 3cba325b358f ("x86/syscalls: Switch to generic syscallhdr.sh")
Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>
---

arch/x86/entry/syscalls/Makefile | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/x86/entry/syscalls/Makefile b/arch/x86/entry/syscalls/Makefile
index 8eb014bca8c9..5b3efed0e4e8 100644
--- a/arch/x86/entry/syscalls/Makefile
+++ b/arch/x86/entry/syscalls/Makefile
@@ -11,6 +11,8 @@ syscall64 := $(src)/syscall_64.tbl

syshdr := $(srctree)/scripts/syscallhdr.sh
systbl := $(srctree)/scripts/syscalltbl.sh
+offset :=
+prefix :=

quiet_cmd_syshdr = SYSHDR $@
cmd_syshdr = $(CONFIG_SHELL) $(syshdr) --abis $(abis) --emit-nr \
--
2.27.0