summary refs log tree commit diff
path: root/arch/ia64
diff options
context:
space:
mode:
authorFiroz Khan <firoz.khan@linaro.org>2018-11-13 12:27:42 +0530
committerTony Luck <tony.luck@intel.com>2018-11-13 08:56:06 -0800
commitd7c5e82c08a0fb8b8d5186cdcb6d2c54ada4076b (patch)
treefd88c611554d7904f6d4cccc965fb64748641e47 /arch/ia64
parentd272a735ef54bf0fbf62673f160bd3d335d1a510 (diff)
downloadlinux-d7c5e82c08a0fb8b8d5186cdcb6d2c54ada4076b.tar.gz
ia64: add __NR_syscalls along with NR_syscalls
NR_syscalls macro holds the number of system call exist
in ia64 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-
scalls 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: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64')
-rw-r--r--arch/ia64/include/asm/unistd.h4
-rw-r--r--arch/ia64/include/uapi/asm/unistd.h4
2 files changed, 5 insertions, 3 deletions
diff --git a/arch/ia64/include/asm/unistd.h b/arch/ia64/include/asm/unistd.h
index 49e34db2529c..0b08ebd2dfde 100644
--- a/arch/ia64/include/asm/unistd.h
+++ b/arch/ia64/include/asm/unistd.h
@@ -10,9 +10,7 @@
 
 #include <uapi/asm/unistd.h>
 
-
-
-#define NR_syscalls			326 /* length of syscall table */
+#define NR_syscalls		__NR_syscalls /* length of syscall table */
 
 /*
  * The following defines stop scripts/checksyscalls.sh from complaining about
diff --git a/arch/ia64/include/uapi/asm/unistd.h b/arch/ia64/include/uapi/asm/unistd.h
index 94b835cc4f11..388ab4e23a18 100644
--- a/arch/ia64/include/uapi/asm/unistd.h
+++ b/arch/ia64/include/uapi/asm/unistd.h
@@ -341,4 +341,8 @@
 #define __NR_preadv2			1348
 #define __NR_pwritev2			1349
 
+#ifdef __KERNEL__
+#define __NR_syscalls			326
+#endif
+
 #endif /* _UAPI_ASM_IA64_UNISTD_H */