diff options
Diffstat (limited to 'kernel/compat.c')
-rw-r--r-- | kernel/compat.c | 10 |
1 files changed, 1 insertions, 9 deletions
diff --git a/kernel/compat.c b/kernel/compat.c index d2c67aa49ae6..c28a306ae05c 100644 --- a/kernel/compat.c +++ b/kernel/compat.c | |||
@@ -1073,15 +1073,7 @@ asmlinkage long compat_sys_rt_sigsuspend(compat_sigset_t __user *unewset, compat | |||
1073 | if (copy_from_user(&newset32, unewset, sizeof(compat_sigset_t))) | 1073 | if (copy_from_user(&newset32, unewset, sizeof(compat_sigset_t))) |
1074 | return -EFAULT; | 1074 | return -EFAULT; |
1075 | sigset_from_compat(&newset, &newset32); | 1075 | sigset_from_compat(&newset, &newset32); |
1076 | sigdelsetmask(&newset, sigmask(SIGKILL)|sigmask(SIGSTOP)); | 1076 | return sigsuspend(&newset); |
1077 | |||
1078 | current->saved_sigmask = current->blocked; | ||
1079 | set_current_blocked(&newset); | ||
1080 | |||
1081 | current->state = TASK_INTERRUPTIBLE; | ||
1082 | schedule(); | ||
1083 | set_restore_sigmask(); | ||
1084 | return -ERESTARTNOHAND; | ||
1085 | } | 1077 | } |
1086 | #endif /* __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND */ | 1078 | #endif /* __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND */ |
1087 | 1079 | ||