alpha: add __NR_syscalls along with NR_SYSCALLS
authorFiroz Khan <firoz.khan@linaro.org>
Tue, 13 Nov 2018 09:31:51 +0000 (15:01 +0530)
committerMatt Turner <mattst88@gmail.com>
Fri, 21 Dec 2018 16:57:56 +0000 (11:57 -0500)
NR_SYSCALLS macro holds the number of system call exist
in alpha architecture. We have to change the value of NR-
_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 total number of system
calls information. So we have two option to update NR_SY-
CALLS value.

1. Update NR_SYSCALLS in asm/unistd.h manually by count-
   ing the no.of system calls. No need to update NR_SYS-
   CALLS until we either add a new system call or delete
   existing system call.

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

The 2nd option will be the recommended one. For that, I
added the __NR_syscalls macro in uapi/asm/unistd.h along
with NR_SYSCALLS asm/unistd.h. The macro __NR_syscalls
also added 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. We also need to enclose
this macro with #ifdef __KERNEL__ to avoid side effects.

Signed-off-by: Firoz Khan <firoz.khan@linaro.org>
Signed-off-by: Matt Turner <mattst88@gmail.com>
arch/alpha/include/asm/unistd.h
arch/alpha/include/uapi/asm/unistd.h

index 4f0ceb336e23c4d6820b54e31806568ae5583c3a..21b706a5b772f289fd977cd42e83da8fd68244bc 100644 (file)
@@ -4,7 +4,7 @@
 
 #include <uapi/asm/unistd.h>
 
-#define NR_SYSCALLS                    523
+#define NR_SYSCALLS    __NR_syscalls
 
 #define __ARCH_WANT_NEW_STAT
 #define __ARCH_WANT_OLD_READDIR
index 47c65f199ec79d11a29b702368cde2214c8f1710..ab40aa6c4898c85e7de056a495a6670b779c8181 100644 (file)
 #define __NR_pwritev2                  521
 #define __NR_statx                     522
 
+#ifdef __KERNEL__
+#define __NR_syscalls                  523
+#endif
+
 #endif /* _UAPI_ALPHA_UNISTD_H */