__NR_Linux_syscalls macro holds the number of system call exist in
PARISC architecture. This macro is currently the part of uapi/asm/
unistd.h file. We have to change the value of __NR_Linux_syscalls,
if we add or delete a system call.

One of the patch in this patch series has a script which will generate
a uapi header based on syscall.tbl file. The syscall.tbl file contains
the number of system call information. So we have two option to update
__NR_Linux_syscalls value.

1. Update __NR_Linux_syscalls in uapi/asm/unistd.h manually by counting
   the no.of system calls. No need to update NR_syscalls until we
   either add a new system call or delete an existing system call.

2. We can keep this feature it above mentioned script, that'll
   count the number of syscalls and keep it in a generated file.
   In this case we don't need to explicitly update __NR_Linux_syscalls
   in asm/unistd.h file.

The 2nd option will be the recommended one. For that, I moved the
__NR_Linux_syscalls macro from uapi/asm/unistd.h to asm/unistd.h. The
macro name also changed form __NR_Linux_syscalls to __NR_syscalls for
making the name convention same across all architecture. While __NR_
syscalls isn't strictly part of the uapi, having it as part of the
generated header to simplifies the implementation.

Signed-off-by: Firoz Khan <firoz.k...@linaro.org>
---
 arch/parisc/include/asm/unistd.h      | 2 ++
 arch/parisc/include/uapi/asm/unistd.h | 2 +-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/parisc/include/asm/unistd.h b/arch/parisc/include/asm/unistd.h
index fc71edf..71417c1 100644
--- a/arch/parisc/include/asm/unistd.h
+++ b/arch/parisc/include/asm/unistd.h
@@ -8,6 +8,8 @@
 
 #define SYS_ify(syscall_name)   __NR_##syscall_name
 
+#define __NR_Linux_syscalls __NR_syscalls
+
 #ifndef ASM_LINE_SEP
 # define ASM_LINE_SEP ;
 #endif
diff --git a/arch/parisc/include/uapi/asm/unistd.h 
b/arch/parisc/include/uapi/asm/unistd.h
index bb52e12..7532817 100644
--- a/arch/parisc/include/uapi/asm/unistd.h
+++ b/arch/parisc/include/uapi/asm/unistd.h
@@ -366,7 +366,7 @@
 #define __NR_statx             (__NR_Linux + 349)
 #define __NR_io_pgetevents     (__NR_Linux + 350)
 
-#define __NR_Linux_syscalls    (__NR_io_pgetevents + 1)
+#define __NR_syscalls           (__NR_Linux + 351)
 
 #define LINUX_GATEWAY_ADDR      0x100
 
-- 
1.9.1

Reply via email to