[tip: x86/entry] x86/syscalls: Use __NR_syscalls instead of __NR_syscall_max

From: tip-bot2 for Masahiro Yamada
Date: Thu May 20 2021 - 09:24:01 EST


The following commit has been merged into the x86/entry branch of tip:

Commit-ID: 49f731f1972e6e44d8a5c3982a72902b3944bc34
Gitweb: https://git.kernel.org/tip/49f731f1972e6e44d8a5c3982a72902b3944bc34
Author: Masahiro Yamada <masahiroy@xxxxxxxxxx>
AuthorDate: Mon, 17 May 2021 16:38:13 +09:00
Committer: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
CommitterDate: Thu, 20 May 2021 15:03:59 +02:00

x86/syscalls: Use __NR_syscalls instead of __NR_syscall_max

__NR_syscall_max is only used by x86 and UML. In contrast, __NR_syscalls is
widely used by all the architectures.

Convert __NR_syscall_max to __NR_syscalls and adjust the usage sites.

This prepares x86 to switch to the generic syscallhdr.sh script.

Signed-off-by: Masahiro Yamada <masahiroy@xxxxxxxxxx>
Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Link: https://lore.kernel.org/r/20210517073815.97426-6-masahiroy@xxxxxxxxxx

---
arch/um/kernel/skas/syscall.c | 2 +-
arch/x86/entry/syscalls/syscallhdr.sh | 2 +-
arch/x86/include/asm/unistd.h | 8 ++++----
3 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/arch/um/kernel/skas/syscall.c b/arch/um/kernel/skas/syscall.c
index 3d91f89..9ee19e5 100644
--- a/arch/um/kernel/skas/syscall.c
+++ b/arch/um/kernel/skas/syscall.c
@@ -41,7 +41,7 @@ void handle_syscall(struct uml_pt_regs *r)
goto out;

syscall = UPT_SYSCALL_NR(r);
- if (syscall >= 0 && syscall <= __NR_syscall_max)
+ if (syscall >= 0 && syscall < __NR_syscalls)
PT_REGS_SET_SYSCALL_RETURN(regs,
EXECUTE_SYSCALL(syscall, regs));

diff --git a/arch/x86/entry/syscalls/syscallhdr.sh b/arch/x86/entry/syscalls/syscallhdr.sh
index cc1e638..75e66af 100644
--- a/arch/x86/entry/syscalls/syscallhdr.sh
+++ b/arch/x86/entry/syscalls/syscallhdr.sh
@@ -28,7 +28,7 @@ grep -E "^[0-9A-Fa-fXx]+[[:space:]]+${my_abis}" "$in" | sort -n | (

echo ""
echo "#ifdef __KERNEL__"
- echo "#define __NR_${prefix}syscall_max $max"
+ echo "#define __NR_${prefix}syscalls $(($max + 1))"
echo "#endif"
echo ""
echo "#endif /* ${fileguard} */"
diff --git a/arch/x86/include/asm/unistd.h b/arch/x86/include/asm/unistd.h
index 1bc6020..80e9d52 100644
--- a/arch/x86/include/asm/unistd.h
+++ b/arch/x86/include/asm/unistd.h
@@ -13,7 +13,7 @@
# define __ARCH_WANT_SYS_OLD_MMAP
# define __ARCH_WANT_SYS_OLD_SELECT

-# define __NR_ia32_syscall_max __NR_syscall_max
+# define IA32_NR_syscalls (__NR_syscalls)

# else

@@ -26,12 +26,12 @@
# define __ARCH_WANT_COMPAT_SYS_PWRITEV64
# define __ARCH_WANT_COMPAT_SYS_PREADV64V2
# define __ARCH_WANT_COMPAT_SYS_PWRITEV64V2
-# define X32_NR_syscalls (__NR_x32_syscall_max + 1)
+# define X32_NR_syscalls (__NR_x32_syscalls)
+# define IA32_NR_syscalls (__NR_ia32_syscalls)

# endif

-# define NR_syscalls (__NR_syscall_max + 1)
-# define IA32_NR_syscalls (__NR_ia32_syscall_max + 1)
+# define NR_syscalls (__NR_syscalls)

# define __ARCH_WANT_NEW_STAT
# define __ARCH_WANT_OLD_READDIR