From: Arnd Bergmann <arnd@xxxxxxxx> I'm working on cleanup series for Linux system call handling, trying to unify some of the architecture specific code there among other things. In the process, I came across a number of bugs that are ABI relevant, so I'm trying to merge these first. I found all of these by inspection, not by running the code, so any extra review would help. I assume some of the issues were already caught by existing LTP tests, while for others we could add a test. Again, I did not check what is already there. The sync_file_range and fadvise64_64 changes on sh, csky and hexagon are likely to also require changes in the libc implementation. Once the patches are reviewed, I plan to merge my changes as bugfixes through the asm-generic tree, but architecture maintainers can also pick them up directly to speed up the bugfix. Arnd Cc: linux-arch@xxxxxxxxxxxxxxx Cc: linux-kernel@xxxxxxxxxxxxxxx Cc: Thomas Bogendoerfer <tsbogend@xxxxxxxxxxxxxxxx> Cc: linux-mips@xxxxxxxxxxxxxxx Cc: Helge Deller <deller@xxxxxx> Cc: linux-parisc@xxxxxxxxxxxxxxx Cc: "David S. Miller" <davem@xxxxxxxxxxxxx> Cc: Andreas Larsson <andreas@xxxxxxxxxxx> Cc: sparclinux@xxxxxxxxxxxxxxx Cc: Michael Ellerman <mpe@xxxxxxxxxxxxxx> Cc: Nicholas Piggin <npiggin@xxxxxxxxx> Cc: Christophe Leroy <christophe.leroy@xxxxxxxxxx> Cc: Naveen N. Rao <naveen.n.rao@xxxxxxxxxxxxx> Cc: linuxppc-dev@xxxxxxxxxxxxxxxx Cc: Brian Cain <bcain@xxxxxxxxxxx> Cc: linux-hexagon@xxxxxxxxxxxxxxx Cc: Guo Ren <guoren@xxxxxxxxxx> Cc: linux-csky@xxxxxxxxxxxxxxx Cc: Heiko Carstens <hca@xxxxxxxxxxxxx> Cc: linux-s390@xxxxxxxxxxxxxxx Cc: Rich Felker <dalias@xxxxxxxx> Cc: John Paul Adrian Glaubitz <glaubitz@xxxxxxxxxxxxxxxxxxx> Cc: linux-sh@xxxxxxxxxxxxxxx Cc: "H. Peter Anvin" <hpa@xxxxxxxxx> Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx> Cc: Christian Brauner <brauner@xxxxxxxxxx> Cc: linux-fsdevel@xxxxxxxxxxxxxxx Cc: libc-alpha@xxxxxxxxxxxxxx Cc: musl@xxxxxxxxxxxxxxxxxx Cc: ltp@xxxxxxxxxxxxxx Arnd Bergmann (15): ftruncate: pass a signed offset syscalls: fix compat_sys_io_pgetevents_time64 usage mips: fix compat_sys_lseek syscall sparc: fix old compat_sys_select() sparc: fix compat recv/recvfrom syscalls parisc: use correct compat recv/recvfrom syscalls parisc: use generic sys_fanotify_mark implementation powerpc: restore some missing spu syscalls sh: rework sync_file_range ABI csky, hexagon: fix broken sys_sync_file_range hexagon: fix fadvise64_64 calling conventions s390: remove native mmap2() syscall syscalls: mmap(): use unsigned offset type consistently asm-generic: unistd: fix time32 compat syscall handling linux/syscalls.h: add missing __user annotations arch/arm64/include/asm/unistd32.h | 2 +- arch/csky/include/uapi/asm/unistd.h | 1 + arch/csky/kernel/syscall.c | 2 +- arch/hexagon/include/asm/syscalls.h | 6 + arch/hexagon/include/uapi/asm/unistd.h | 1 + arch/hexagon/kernel/syscalltab.c | 7 + arch/loongarch/kernel/syscall.c | 2 +- arch/microblaze/kernel/sys_microblaze.c | 2 +- arch/mips/kernel/syscalls/syscall_n32.tbl | 2 +- arch/mips/kernel/syscalls/syscall_o32.tbl | 4 +- arch/parisc/Kconfig | 1 + arch/parisc/kernel/sys_parisc32.c | 9 - arch/parisc/kernel/syscalls/syscall.tbl | 6 +- arch/powerpc/kernel/syscalls/syscall.tbl | 6 +- arch/riscv/kernel/sys_riscv.c | 4 +- arch/s390/kernel/syscall.c | 27 --- arch/s390/kernel/syscalls/syscall.tbl | 2 +- arch/sh/kernel/sys_sh32.c | 11 ++ arch/sh/kernel/syscalls/syscall.tbl | 3 +- arch/sparc/kernel/sys32.S | 221 ---------------------- arch/sparc/kernel/syscalls/syscall.tbl | 8 +- arch/x86/entry/syscalls/syscall_32.tbl | 2 +- fs/open.c | 4 +- include/asm-generic/syscalls.h | 2 +- include/linux/compat.h | 2 +- include/linux/syscalls.h | 20 +- include/uapi/asm-generic/unistd.h | 146 +++++++++----- 27 files changed, 160 insertions(+), 343 deletions(-) create mode 100644 arch/hexagon/include/asm/syscalls.h -- 2.39.2