[PATCH v2 0/4] syscalls: remove compat_alloc_user_space callers

From: Arnd Bergmann
Date: Mon Nov 02 2020 - 07:32:17 EST


From: Arnd Bergmann <arnd@xxxxxxxx>

Going through compat_alloc_user_space() to convert indirect system call
arguments tends to add complexity compared to handling the native and
compat logic in the same code.

I have patches for all other uses of compat_alloc_user_space() as well,
and would expect that we can subsequently remove the interface itself.

Changes in v2:

- address review comments from Christoph Hellwig
- split syscall removal into a separate patch
- replace __X32_COND_SYSCALL() with individual macros for x32

Arnd Bergmann (4):
kexec: simplify compat_sys_kexec_load
mm: simplify compat_sys_move_pages
mm: simplify compat numa syscalls
compat: remove some compat entry points

arch/arm64/include/asm/unistd32.h | 12 +-
arch/mips/kernel/syscalls/syscall_n32.tbl | 12 +-
arch/mips/kernel/syscalls/syscall_o32.tbl | 12 +-
arch/parisc/kernel/syscalls/syscall.tbl | 10 +-
arch/powerpc/kernel/syscalls/syscall.tbl | 12 +-
arch/s390/kernel/syscalls/syscall.tbl | 12 +-
arch/sparc/kernel/syscalls/syscall.tbl | 12 +-
arch/x86/entry/syscall_x32.c | 2 +
arch/x86/entry/syscalls/syscall_32.tbl | 6 +-
arch/x86/entry/syscalls/syscall_64.tbl | 4 +-
include/linux/compat.h | 26 ---
include/linux/kexec.h | 2 -
include/uapi/asm-generic/unistd.h | 12 +-
kernel/kexec.c | 90 ++++------
kernel/sys_ni.c | 5 -
mm/mempolicy.c | 195 +++++-----------------
mm/migrate.c | 50 +++---
17 files changed, 155 insertions(+), 319 deletions(-)

Cc: Alexander Viro <viro@xxxxxxxxxxxxxxxxxx>
Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
Cc: Andy Lutomirski <luto@xxxxxxxxxx>
Cc: Arnd Bergmann <arnd@xxxxxxxx>
Cc: Borislav Petkov <bp@xxxxxxxxx>
Cc: Brian Gerst <brgerst@xxxxxxxxx>
Cc: Christoph Hellwig <hch@xxxxxxxxxxxxx>
Cc: Eric Biederman <ebiederm@xxxxxxxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxxxxx>
Cc: "H . Peter Anvin" <hpa@xxxxxxxxx>
Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
Cc: linux-arch@xxxxxxxxxxxxxxx
Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx
Cc: linux-kernel@xxxxxxxxxxxxxxx
Cc: linux-mm@xxxxxxxxx
Cc: kexec@xxxxxxxxxxxxxxxxxxx
--
2.27.0