Message ID | 1545043236-11649-2-git-send-email-firoz.khan@linaro.org |
---|---|
State | Accepted |
Commit | 8a19eeeab66dfdd7c67bc8e3048ac0064e8943d7 |
Headers | show |
Series | powerpc: system call table generation support | expand |
On Sun, 23 Dec 2018 at 18:58, Michael Ellerman <patch-notifications@ellerman.id.au> wrote: > > On Mon, 2018-12-17 at 10:40:32 UTC, Firoz Khan wrote: > > NR_syscalls macro holds the number of system call exist > > in powerpc 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 number of system call > > information. So we have two option to update NR_syscalls > > 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 in 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> > > Series applied to powerpc next, thanks. Thanks Micheal! Firoz > > https://git.kernel.org/powerpc/c/8a19eeeab66dfdd7c67bc8e3048ac0 > > cheers
diff --git a/arch/powerpc/include/asm/unistd.h b/arch/powerpc/include/asm/unistd.h index b0de85b..a3c35e6 100644 --- a/arch/powerpc/include/asm/unistd.h +++ b/arch/powerpc/include/asm/unistd.h @@ -11,8 +11,7 @@ #include <uapi/asm/unistd.h> - -#define NR_syscalls 389 +#define NR_syscalls __NR_syscalls #define __NR__exit __NR_exit diff --git a/arch/powerpc/include/uapi/asm/unistd.h b/arch/powerpc/include/uapi/asm/unistd.h index 985534d..7195868 100644 --- a/arch/powerpc/include/uapi/asm/unistd.h +++ b/arch/powerpc/include/uapi/asm/unistd.h @@ -10,7 +10,6 @@ #ifndef _UAPI_ASM_POWERPC_UNISTD_H_ #define _UAPI_ASM_POWERPC_UNISTD_H_ - #define __NR_restart_syscall 0 #define __NR_exit 1 #define __NR_fork 2 @@ -401,4 +400,8 @@ #define __NR_rseq 387 #define __NR_io_pgetevents 388 +#ifdef __KERNEL__ +#define __NR_syscalls 389 +#endif + #endif /* _UAPI_ASM_POWERPC_UNISTD_H_ */
NR_syscalls macro holds the number of system call exist in powerpc 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 number of system call information. So we have two option to update NR_syscalls 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 in 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> --- arch/powerpc/include/asm/unistd.h | 3 +-- arch/powerpc/include/uapi/asm/unistd.h | 5 ++++- 2 files changed, 5 insertions(+), 3 deletions(-) -- 1.9.1