summaryrefslogtreecommitdiff
path: root/scripts/syscallhdr.sh
diff options
context:
space:
mode:
authorMasahiro Yamada <masahiroy@kernel.org>2021-02-16 11:04:11 +0900
committerMasahiro Yamada <masahiroy@kernel.org>2021-02-22 08:22:03 +0900
commit9df526b03c01ad98ed64e46c5e15b65fe89e25f6 (patch)
tree80643acd7a5eb2b937ec56e623f8ec7c69b84748 /scripts/syscallhdr.sh
parent29c5c3ac633161f4ae2f4bb5f278b3719391b20e (diff)
downloadlwn-9df526b03c01ad98ed64e46c5e15b65fe89e25f6.tar.gz
lwn-9df526b03c01ad98ed64e46c5e15b65fe89e25f6.zip
scripts: add generic syscalltbl.sh
Most of architectures generate syscall headers at the compile time in a similar way. The syscall table has the same format for all architectures. Each line has up to 5 fields; syscall number, ABI, syscall name, native entry point, and compat entry point. The syscall table is processed by syscalltbl.sh script into header files. Despite the same pattern, scripts are maintained per architecture, which results in code duplication and bad maintainability. As of v5.11-rc1, 12 architectures duplicate similar shell scripts: $ find arch -name syscalltbl.sh | sort arch/alpha/kernel/syscalls/syscalltbl.sh arch/arm/tools/syscalltbl.sh arch/ia64/kernel/syscalls/syscalltbl.sh arch/m68k/kernel/syscalls/syscalltbl.sh arch/microblaze/kernel/syscalls/syscalltbl.sh arch/mips/kernel/syscalls/syscalltbl.sh arch/parisc/kernel/syscalls/syscalltbl.sh arch/powerpc/kernel/syscalls/syscalltbl.sh arch/sh/kernel/syscalls/syscalltbl.sh arch/sparc/kernel/syscalls/syscalltbl.sh arch/x86/entry/syscalls/syscalltbl.sh arch/xtensa/kernel/syscalls/syscalltbl.sh My goal is to unify them into scripts/syscalltbl.sh. __SYSCALL_WITH_COMPAT should be defined as follows: 32-bit kernel: #define __SYSCALL_WITH_COMPAT(nr, native, compat) __SYSCALL(nr, native) 64-bit kernel: #define __SYSCALL_WITH_COMPAT(nr, native, compat) __SYSCALL(nr, compat) Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
Diffstat (limited to 'scripts/syscallhdr.sh')
0 files changed, 0 insertions, 0 deletions