mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-10-05 00:20:32 +00:00
mips: sigsuspend() is essentially the same as rt_sigsuspend() here
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
ea5d83db67
commit
1910f4ab77
2 changed files with 4 additions and 16 deletions
|
@ -247,15 +247,9 @@ void __user *get_sigframe(struct k_sigaction *ka, struct pt_regs *regs,
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef CONFIG_TRAD_SIGNALS
|
#ifdef CONFIG_TRAD_SIGNALS
|
||||||
asmlinkage int sys_sigsuspend(nabi_no_regargs struct pt_regs regs)
|
SYSCALL_DEFINE1(sigsuspend, sigset_t __user *, uset)
|
||||||
{
|
{
|
||||||
sigset_t newset;
|
return sys_rt_sigsuspend(uset, sizeof(sigset_t));
|
||||||
sigset_t __user *uset;
|
|
||||||
|
|
||||||
uset = (sigset_t __user *) regs.regs[4];
|
|
||||||
if (copy_from_user(&newset, uset, sizeof(sigset_t)))
|
|
||||||
return -EFAULT;
|
|
||||||
return sigsuspend(&newset);
|
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
|
@ -273,15 +273,9 @@ static inline int get_sigset(sigset_t *kbuf, const compat_sigset_t __user *ubuf)
|
||||||
* Atomically swap in the new signal mask, and wait for a signal.
|
* Atomically swap in the new signal mask, and wait for a signal.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
asmlinkage int sys32_sigsuspend(nabi_no_regargs struct pt_regs regs)
|
asmlinkage int sys32_sigsuspend(compat_sigset_t __user *uset)
|
||||||
{
|
{
|
||||||
compat_sigset_t __user *uset;
|
return compat_sys_rt_sigsuspend(uset, sizeof(compat_sigset_t));
|
||||||
sigset_t newset;
|
|
||||||
|
|
||||||
uset = (compat_sigset_t __user *) regs.regs[4];
|
|
||||||
if (get_sigset(&newset, uset))
|
|
||||||
return -EFAULT;
|
|
||||||
return sigsuspend(&newset);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
SYSCALL_DEFINE3(32_sigaction, long, sig, const struct sigaction32 __user *, act,
|
SYSCALL_DEFINE3(32_sigaction, long, sig, const struct sigaction32 __user *, act,
|
||||||
|
|
Loading…
Reference in a new issue