diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2018-02-27 12:39:30 -0800 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2018-02-27 13:25:49 -0800 |
commit | de25c71cf6b4d9bb49937f96485c8a35c577d567 (patch) | |
tree | def1214020b866244ef90ed3784d899b35b1a346 /kernel/signal.c | |
parent | 3621644dbcd549dd5b7759d4eb25943699aa3c62 (diff) | |
download | linux-de25c71cf6b4d9bb49937f96485c8a35c577d567.tar.bz2 |
Broken, but working, ptregs system call conversion for x86-64WIP-syscall
Not-yet-signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/signal.c')
-rw-r--r-- | kernel/signal.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/kernel/signal.c b/kernel/signal.c index c6e4c83dc090..7b7906b7ce75 100644 --- a/kernel/signal.c +++ b/kernel/signal.c @@ -3573,9 +3573,8 @@ int __save_altstack(stack_t __user *uss, unsigned long sp) } #ifdef CONFIG_COMPAT -COMPAT_SYSCALL_DEFINE2(sigaltstack, - const compat_stack_t __user *, uss_ptr, - compat_stack_t __user *, uoss_ptr) +static long do_compat_sigaltstack(const compat_stack_t __user *uss_ptr, + compat_stack_t __user *uoss_ptr) { stack_t uss, uoss; int ret; @@ -3602,9 +3601,16 @@ COMPAT_SYSCALL_DEFINE2(sigaltstack, return ret; } +COMPAT_SYSCALL_DEFINE2(sigaltstack, + const compat_stack_t __user *, uss_ptr, + compat_stack_t __user *, uoss_ptr) +{ + return do_compat_sigaltstack(uss_ptr, uoss_ptr); +} + int compat_restore_altstack(const compat_stack_t __user *uss) { - int err = compat_sys_sigaltstack(uss, NULL); + int err = do_compat_sigaltstack(uss, NULL); /* squash all but -EFAULT for now */ return err == -EFAULT ? err : 0; } |