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

x86/entry/64: Use syscall wrappers for x32_rt_sigreturn

Add missing syscall wrapper for x32_rt_sigreturn().

Signed-off-by: Brian Gerst <brgerst@gmail.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Dominik Brodowski <linux@dominikbrodowski.net>
Reviewed-by: Andy Lutomirski <luto@kernel.org>
Link: https://lkml.kernel.org/r/20200313195144.164260-6-brgerst@gmail.com

authored by

Brian Gerst and committed by
Thomas Gleixner
27dd84fa a74d187c

+2 -7
+1 -1
arch/x86/entry/syscalls/syscall_64.tbl
··· 367 367 # is defined. 368 368 # 369 369 512 x32 rt_sigaction __x32_compat_sys_rt_sigaction 370 - 513 x32 rt_sigreturn sys32_x32_rt_sigreturn 370 + 513 x32 rt_sigreturn __x32_compat_sys_x32_rt_sigreturn 371 371 514 x32 ioctl __x32_compat_sys_ioctl 372 372 515 x32 readv __x32_compat_sys_readv 373 373 516 x32 writev __x32_compat_sys_writev
-5
arch/x86/include/asm/sighandling.h
··· 17 17 int setup_sigcontext(struct sigcontext __user *sc, void __user *fpstate, 18 18 struct pt_regs *regs, unsigned long mask); 19 19 20 - 21 - #ifdef CONFIG_X86_X32_ABI 22 - asmlinkage long sys32_x32_rt_sigreturn(void); 23 - #endif 24 - 25 20 #endif /* _ASM_X86_SIGHANDLING_H */
+1 -1
arch/x86/kernel/signal.c
··· 859 859 } 860 860 861 861 #ifdef CONFIG_X86_X32_ABI 862 - asmlinkage long sys32_x32_rt_sigreturn(void) 862 + COMPAT_SYSCALL_DEFINE0(x32_rt_sigreturn) 863 863 { 864 864 struct pt_regs *regs = current_pt_regs(); 865 865 struct rt_sigframe_x32 __user *frame;