Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

csky: convert to generic syscall table

The uapi/asm/unistd_32.h and asm/syscall_table_32.h headers can now be
generated from scripts/syscall.tbl, which makes this consistent with
the other architectures that have their own syscall.tbl.

csky has two architecture specific system calls, which I add to
the generic table. The time32, stat64 and rlimit entries in the
syscall_abis_32 line are for system calls that were part of the generic
ABI when arch/csky got added but are no longer enabled by default for
new architectures.

Both the user visible side of asm/unistd.h and the internal syscall
table in the kernel should have the same effective contents after this.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>

+21 -12
+2
arch/csky/include/asm/Kbuild
··· 1 1 # SPDX-License-Identifier: GPL-2.0 2 + syscall-y := syscall_table_32.h 3 + 2 4 generic-y += asm-offsets.h 3 5 generic-y += extable.h 4 6 generic-y += kvm_para.h
+3
arch/csky/include/asm/unistd.h
··· 2 2 3 3 #include <uapi/asm/unistd.h> 4 4 5 + #define __ARCH_WANT_STAT64 6 + #define __ARCH_WANT_SYS_CLONE 7 + 5 8 #define NR_syscalls (__NR_syscalls)
+2
arch/csky/include/uapi/asm/Kbuild
··· 1 1 # SPDX-License-Identifier: GPL-2.0 2 + syscall-y += unistd_32.h 3 + 2 4 generic-y += ucontext.h
+3 -11
arch/csky/include/uapi/asm/unistd.h
··· 1 1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 2 3 - #define __ARCH_WANT_STAT64 4 - #define __ARCH_WANT_NEW_STAT 5 - #define __ARCH_WANT_SYS_CLONE 6 - #define __ARCH_WANT_SET_GET_RLIMIT 7 - #define __ARCH_WANT_TIME32_SYSCALLS 8 - #define __ARCH_WANT_SYNC_FILE_RANGE2 9 - #include <asm-generic/unistd.h> 3 + #include <asm/unistd_32.h> 10 4 11 - #define __NR_set_thread_area (__NR_arch_specific_syscall + 0) 12 - __SYSCALL(__NR_set_thread_area, sys_set_thread_area) 13 - #define __NR_cacheflush (__NR_arch_specific_syscall + 1) 14 - __SYSCALL(__NR_cacheflush, sys_cacheflush) 5 + #define __NR_sync_file_range2 84 6 + #undef __NR_sync_file_range
+4
arch/csky/kernel/Makefile.syscalls
··· 1 + # SPDX-License-Identifier: GPL-2.0 2 + 3 + syscall_abis_32 += csky time32 stat64 rlimit 4 +
+3 -1
arch/csky/kernel/syscall_table.c
··· 6 6 7 7 #undef __SYSCALL 8 8 #define __SYSCALL(nr, call)[nr] = (call), 9 + #define __SYSCALL_WITH_COMPAT(nr, native, compat) __SYSCALL(nr, native) 9 10 10 11 #define sys_fadvise64_64 sys_csky_fadvise64_64 12 + #define sys_sync_file_range sys_sync_file_range2 11 13 void * const sys_call_table[__NR_syscalls] __page_aligned_data = { 12 14 [0 ... __NR_syscalls - 1] = sys_ni_syscall, 13 - #include <asm/unistd.h> 15 + #include <asm/syscall_table_32.h> 14 16 };
+4
scripts/syscall.tbl
··· 293 293 246 arc arc_gettls sys_arc_gettls 294 294 247 arc sysfs sys_sysfs 295 295 248 arc arc_usr_cmpxchg sys_arc_usr_cmpxchg 296 + 297 + 244 csky set_thread_area sys_set_thread_area 298 + 245 csky cacheflush sys_cacheflush 299 + 296 300 260 time32 wait4 sys_wait4 compat_sys_wait4 297 301 260 64 wait4 sys_wait4 298 302 261 common prlimit64 sys_prlimit64