[PATCH 8/9] mm: remove compat_process_vm_{readv,writev}
Now that import_iovec handles compat iovecs, the native syscalls can be used for the compat case as well. Signed-off-by: Christoph Hellwig --- arch/arm64/include/asm/unistd32.h | 4 +- arch/mips/kernel/syscalls/syscall_n32.tbl | 4 +- arch/mips/kernel/syscalls/syscall_o32.tbl | 4 +- arch/parisc/kernel/syscalls/syscall.tbl | 4 +- arch/powerpc/kernel/syscalls/syscall.tbl | 4 +- arch/s390/kernel/syscalls/syscall.tbl | 4 +- arch/sparc/kernel/syscalls/syscall.tbl| 4 +- arch/x86/entry/syscall_x32.c | 2 + arch/x86/entry/syscalls/syscall_32.tbl| 4 +- arch/x86/entry/syscalls/syscall_64.tbl| 4 +- include/linux/compat.h| 8 --- include/uapi/asm-generic/unistd.h | 6 +- mm/process_vm_access.c| 69 --- tools/include/uapi/asm-generic/unistd.h | 6 +- .../arch/powerpc/entry/syscalls/syscall.tbl | 4 +- .../perf/arch/s390/entry/syscalls/syscall.tbl | 4 +- .../arch/x86/entry/syscalls/syscall_64.tbl| 4 +- 17 files changed, 30 insertions(+), 109 deletions(-) diff --git a/arch/arm64/include/asm/unistd32.h b/arch/arm64/include/asm/unistd32.h index 11dfae3a8563bd..0c280a05f699bf 100644 --- a/arch/arm64/include/asm/unistd32.h +++ b/arch/arm64/include/asm/unistd32.h @@ -763,9 +763,9 @@ __SYSCALL(__NR_sendmmsg, compat_sys_sendmmsg) #define __NR_setns 375 __SYSCALL(__NR_setns, sys_setns) #define __NR_process_vm_readv 376 -__SYSCALL(__NR_process_vm_readv, compat_sys_process_vm_readv) +__SYSCALL(__NR_process_vm_readv, sys_process_vm_readv) #define __NR_process_vm_writev 377 -__SYSCALL(__NR_process_vm_writev, compat_sys_process_vm_writev) +__SYSCALL(__NR_process_vm_writev, sys_process_vm_writev) #define __NR_kcmp 378 __SYSCALL(__NR_kcmp, sys_kcmp) #define __NR_finit_module 379 diff --git a/arch/mips/kernel/syscalls/syscall_n32.tbl b/arch/mips/kernel/syscalls/syscall_n32.tbl index 5a39d4de0ac85b..0bc2e0fcf1ee56 100644 --- a/arch/mips/kernel/syscalls/syscall_n32.tbl +++ b/arch/mips/kernel/syscalls/syscall_n32.tbl @@ -317,8 +317,8 @@ 306n32 syncfs sys_syncfs 307n32 sendmmsgcompat_sys_sendmmsg 308n32 setns sys_setns -309n32 process_vm_readvcompat_sys_process_vm_readv -310n32 process_vm_writev compat_sys_process_vm_writev +309n32 process_vm_readvsys_process_vm_readv +310n32 process_vm_writev sys_process_vm_writev 311n32 kcmpsys_kcmp 312n32 finit_modulesys_finit_module 313n32 sched_setattr sys_sched_setattr diff --git a/arch/mips/kernel/syscalls/syscall_o32.tbl b/arch/mips/kernel/syscalls/syscall_o32.tbl index 136efc6b8c5444..b408c13b934296 100644 --- a/arch/mips/kernel/syscalls/syscall_o32.tbl +++ b/arch/mips/kernel/syscalls/syscall_o32.tbl @@ -356,8 +356,8 @@ 342o32 syncfs sys_syncfs 343o32 sendmmsgsys_sendmmsg compat_sys_sendmmsg 344o32 setns sys_setns -345o32 process_vm_readvsys_process_vm_readv compat_sys_process_vm_readv -346o32 process_vm_writev sys_process_vm_writev compat_sys_process_vm_writev +345o32 process_vm_readvsys_process_vm_readv +346o32 process_vm_writev sys_process_vm_writev 347o32 kcmpsys_kcmp 348o32 finit_modulesys_finit_module 349o32 sched_setattr sys_sched_setattr diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl index a9e184192caedd..2015a5124b78ad 100644 --- a/arch/parisc/kernel/syscalls/syscall.tbl +++ b/arch/parisc/kernel/syscalls/syscall.tbl @@ -372,8 +372,8 @@ 327common syncfs sys_syncfs 328common setns sys_setns 329common sendmmsgsys_sendmmsg compat_sys_sendmmsg -330common process_vm_readvsys_process_vm_readv compat_sys_process_vm_readv -331common process_vm_writev sys_process_vm_writev compat_sys_process_vm_writev +330common process_vm_readvsys_process_vm_readv +331common process_vm_writev sys_process_vm_writev 332common kcmpsys_kcmp 333common finit_modulesys_finit_module 334common sched_setattr sys_sched_setattr diff --git a/arch/powerpc/kernel/syscalls/syscall.tbl b/arch/powerpc/kernel/syscalls/syscall.tbl index 0d4985919ca34d..66a472aa635d3f 100644 --- a/arch/powerpc/kernel/syscalls/syscall.tbl +++ b/arch/powerpc/kernel/syscalls/syscall
[PATCH 8/9] mm: remove compat_process_vm_{readv,writev}
Now that import_iovec handles compat iovecs, the native syscalls can be used for the compat case as well. Signed-off-by: Christoph Hellwig --- arch/arm64/include/asm/unistd32.h | 4 +- arch/mips/kernel/syscalls/syscall_n32.tbl | 4 +- arch/mips/kernel/syscalls/syscall_o32.tbl | 4 +- arch/parisc/kernel/syscalls/syscall.tbl | 4 +- arch/powerpc/kernel/syscalls/syscall.tbl | 4 +- arch/s390/kernel/syscalls/syscall.tbl | 4 +- arch/sparc/kernel/syscalls/syscall.tbl| 4 +- arch/x86/entry/syscall_x32.c | 2 + arch/x86/entry/syscalls/syscall_32.tbl| 4 +- arch/x86/entry/syscalls/syscall_64.tbl| 4 +- include/linux/compat.h| 8 --- include/uapi/asm-generic/unistd.h | 6 +- mm/process_vm_access.c| 69 --- tools/include/uapi/asm-generic/unistd.h | 6 +- .../arch/powerpc/entry/syscalls/syscall.tbl | 4 +- .../perf/arch/s390/entry/syscalls/syscall.tbl | 4 +- .../arch/x86/entry/syscalls/syscall_64.tbl| 4 +- 17 files changed, 30 insertions(+), 109 deletions(-) diff --git a/arch/arm64/include/asm/unistd32.h b/arch/arm64/include/asm/unistd32.h index 11dfae3a8563bd..0c280a05f699bf 100644 --- a/arch/arm64/include/asm/unistd32.h +++ b/arch/arm64/include/asm/unistd32.h @@ -763,9 +763,9 @@ __SYSCALL(__NR_sendmmsg, compat_sys_sendmmsg) #define __NR_setns 375 __SYSCALL(__NR_setns, sys_setns) #define __NR_process_vm_readv 376 -__SYSCALL(__NR_process_vm_readv, compat_sys_process_vm_readv) +__SYSCALL(__NR_process_vm_readv, sys_process_vm_readv) #define __NR_process_vm_writev 377 -__SYSCALL(__NR_process_vm_writev, compat_sys_process_vm_writev) +__SYSCALL(__NR_process_vm_writev, sys_process_vm_writev) #define __NR_kcmp 378 __SYSCALL(__NR_kcmp, sys_kcmp) #define __NR_finit_module 379 diff --git a/arch/mips/kernel/syscalls/syscall_n32.tbl b/arch/mips/kernel/syscalls/syscall_n32.tbl index 5a39d4de0ac85b..0bc2e0fcf1ee56 100644 --- a/arch/mips/kernel/syscalls/syscall_n32.tbl +++ b/arch/mips/kernel/syscalls/syscall_n32.tbl @@ -317,8 +317,8 @@ 306n32 syncfs sys_syncfs 307n32 sendmmsgcompat_sys_sendmmsg 308n32 setns sys_setns -309n32 process_vm_readvcompat_sys_process_vm_readv -310n32 process_vm_writev compat_sys_process_vm_writev +309n32 process_vm_readvsys_process_vm_readv +310n32 process_vm_writev sys_process_vm_writev 311n32 kcmpsys_kcmp 312n32 finit_modulesys_finit_module 313n32 sched_setattr sys_sched_setattr diff --git a/arch/mips/kernel/syscalls/syscall_o32.tbl b/arch/mips/kernel/syscalls/syscall_o32.tbl index 136efc6b8c5444..b408c13b934296 100644 --- a/arch/mips/kernel/syscalls/syscall_o32.tbl +++ b/arch/mips/kernel/syscalls/syscall_o32.tbl @@ -356,8 +356,8 @@ 342o32 syncfs sys_syncfs 343o32 sendmmsgsys_sendmmsg compat_sys_sendmmsg 344o32 setns sys_setns -345o32 process_vm_readvsys_process_vm_readv compat_sys_process_vm_readv -346o32 process_vm_writev sys_process_vm_writev compat_sys_process_vm_writev +345o32 process_vm_readvsys_process_vm_readv +346o32 process_vm_writev sys_process_vm_writev 347o32 kcmpsys_kcmp 348o32 finit_modulesys_finit_module 349o32 sched_setattr sys_sched_setattr diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl index a9e184192caedd..2015a5124b78ad 100644 --- a/arch/parisc/kernel/syscalls/syscall.tbl +++ b/arch/parisc/kernel/syscalls/syscall.tbl @@ -372,8 +372,8 @@ 327common syncfs sys_syncfs 328common setns sys_setns 329common sendmmsgsys_sendmmsg compat_sys_sendmmsg -330common process_vm_readvsys_process_vm_readv compat_sys_process_vm_readv -331common process_vm_writev sys_process_vm_writev compat_sys_process_vm_writev +330common process_vm_readvsys_process_vm_readv +331common process_vm_writev sys_process_vm_writev 332common kcmpsys_kcmp 333common finit_modulesys_finit_module 334common sched_setattr sys_sched_setattr diff --git a/arch/powerpc/kernel/syscalls/syscall.tbl b/arch/powerpc/kernel/syscalls/syscall.tbl index 0d4985919ca34d..66a472aa635d3f 100644 --- a/arch/powerpc/kernel/syscalls/syscall.tbl +++ b/arch/powerpc/kernel/syscalls/syscall
Re: [PATCH 8/9] mm: remove compat_process_vm_{readv,writev}
On Fri, Sep 18, 2020 at 2:45 PM Christoph Hellwig wrote: > > Now that import_iovec handles compat iovecs, the native syscalls > can be used for the compat case as well. > > diff --git a/arch/x86/entry/syscall_x32.c b/arch/x86/entry/syscall_x32.c > index a4840b9d50ad14..f2fe0a33bcfdd5 100644 > --- a/arch/x86/entry/syscall_x32.c > +++ b/arch/x86/entry/syscall_x32.c > @@ -17,6 +17,8 @@ > #define __x32_sys_getsockopt __x64_sys_getsockopt > #define __x32_sys_setsockopt __x64_sys_setsockopt > #define __x32_sys_vmsplice __x64_sys_vmsplice > +#define __x32_sys_process_vm_readv __x64_sys_process_vm_readv > +#define __x32_sys_process_vm_writev__x64_sys_process_vm_writev > > #define __SYSCALL_64(nr, sym) > I forgot this hack existed, and just sent a patch with subject "x86: add __X32_COND_SYSCALL() macro" instead. If I understand this right, the macros above should no longer be needed once my patch gets merged. Arnd
[PATCH 8/9] mm: remove compat_process_vm_{readv,writev}
Now that import_iovec handles compat iovecs, the native syscalls can be used for the compat case as well. Signed-off-by: Christoph Hellwig --- arch/arm64/include/asm/unistd32.h | 4 +- arch/mips/kernel/syscalls/syscall_n32.tbl | 4 +- arch/mips/kernel/syscalls/syscall_o32.tbl | 4 +- arch/parisc/kernel/syscalls/syscall.tbl | 4 +- arch/powerpc/kernel/syscalls/syscall.tbl | 4 +- arch/s390/kernel/syscalls/syscall.tbl | 4 +- arch/sparc/kernel/syscalls/syscall.tbl| 4 +- arch/x86/entry/syscall_x32.c | 2 + arch/x86/entry/syscalls/syscall_32.tbl| 4 +- arch/x86/entry/syscalls/syscall_64.tbl| 4 +- include/linux/compat.h| 8 --- include/uapi/asm-generic/unistd.h | 6 +- mm/process_vm_access.c| 70 --- tools/include/uapi/asm-generic/unistd.h | 6 +- .../arch/powerpc/entry/syscalls/syscall.tbl | 4 +- .../perf/arch/s390/entry/syscalls/syscall.tbl | 4 +- .../arch/x86/entry/syscalls/syscall_64.tbl| 4 +- 17 files changed, 30 insertions(+), 110 deletions(-) diff --git a/arch/arm64/include/asm/unistd32.h b/arch/arm64/include/asm/unistd32.h index 11dfae3a8563bd..0c280a05f699bf 100644 --- a/arch/arm64/include/asm/unistd32.h +++ b/arch/arm64/include/asm/unistd32.h @@ -763,9 +763,9 @@ __SYSCALL(__NR_sendmmsg, compat_sys_sendmmsg) #define __NR_setns 375 __SYSCALL(__NR_setns, sys_setns) #define __NR_process_vm_readv 376 -__SYSCALL(__NR_process_vm_readv, compat_sys_process_vm_readv) +__SYSCALL(__NR_process_vm_readv, sys_process_vm_readv) #define __NR_process_vm_writev 377 -__SYSCALL(__NR_process_vm_writev, compat_sys_process_vm_writev) +__SYSCALL(__NR_process_vm_writev, sys_process_vm_writev) #define __NR_kcmp 378 __SYSCALL(__NR_kcmp, sys_kcmp) #define __NR_finit_module 379 diff --git a/arch/mips/kernel/syscalls/syscall_n32.tbl b/arch/mips/kernel/syscalls/syscall_n32.tbl index 5a39d4de0ac85b..0bc2e0fcf1ee56 100644 --- a/arch/mips/kernel/syscalls/syscall_n32.tbl +++ b/arch/mips/kernel/syscalls/syscall_n32.tbl @@ -317,8 +317,8 @@ 306n32 syncfs sys_syncfs 307n32 sendmmsgcompat_sys_sendmmsg 308n32 setns sys_setns -309n32 process_vm_readvcompat_sys_process_vm_readv -310n32 process_vm_writev compat_sys_process_vm_writev +309n32 process_vm_readvsys_process_vm_readv +310n32 process_vm_writev sys_process_vm_writev 311n32 kcmpsys_kcmp 312n32 finit_modulesys_finit_module 313n32 sched_setattr sys_sched_setattr diff --git a/arch/mips/kernel/syscalls/syscall_o32.tbl b/arch/mips/kernel/syscalls/syscall_o32.tbl index 136efc6b8c5444..b408c13b934296 100644 --- a/arch/mips/kernel/syscalls/syscall_o32.tbl +++ b/arch/mips/kernel/syscalls/syscall_o32.tbl @@ -356,8 +356,8 @@ 342o32 syncfs sys_syncfs 343o32 sendmmsgsys_sendmmsg compat_sys_sendmmsg 344o32 setns sys_setns -345o32 process_vm_readvsys_process_vm_readv compat_sys_process_vm_readv -346o32 process_vm_writev sys_process_vm_writev compat_sys_process_vm_writev +345o32 process_vm_readvsys_process_vm_readv +346o32 process_vm_writev sys_process_vm_writev 347o32 kcmpsys_kcmp 348o32 finit_modulesys_finit_module 349o32 sched_setattr sys_sched_setattr diff --git a/arch/parisc/kernel/syscalls/syscall.tbl b/arch/parisc/kernel/syscalls/syscall.tbl index a9e184192caedd..2015a5124b78ad 100644 --- a/arch/parisc/kernel/syscalls/syscall.tbl +++ b/arch/parisc/kernel/syscalls/syscall.tbl @@ -372,8 +372,8 @@ 327common syncfs sys_syncfs 328common setns sys_setns 329common sendmmsgsys_sendmmsg compat_sys_sendmmsg -330common process_vm_readvsys_process_vm_readv compat_sys_process_vm_readv -331common process_vm_writev sys_process_vm_writev compat_sys_process_vm_writev +330common process_vm_readvsys_process_vm_readv +331common process_vm_writev sys_process_vm_writev 332common kcmpsys_kcmp 333common finit_modulesys_finit_module 334common sched_setattr sys_sched_setattr diff --git a/arch/powerpc/kernel/syscalls/syscall.tbl b/arch/powerpc/kernel/syscalls/syscall.tbl index 0d4985919ca34d..66a472aa635d3f 100644 --- a/arch/powerpc/kernel/syscalls/syscall.tbl +++ b/arch/powerpc/kernel/syscalls/syscall