From 1910f4ab777f17744aec3b39fa15d3d4340df6d4 Mon Sep 17 00:00:00 2001 From: Al Viro Date: Tue, 25 Dec 2012 16:25:18 -0500 Subject: [PATCH] mips: sigsuspend() is essentially the same as rt_sigsuspend() here Signed-off-by: Al Viro --- arch/mips/kernel/signal.c | 10 ++-------- arch/mips/kernel/signal32.c | 10 ++-------- 2 files changed, 4 insertions(+), 16 deletions(-) diff --git a/arch/mips/kernel/signal.c b/arch/mips/kernel/signal.c index f221722a6d43..95b019d92f50 100644 --- a/arch/mips/kernel/signal.c +++ b/arch/mips/kernel/signal.c @@ -247,15 +247,9 @@ void __user *get_sigframe(struct k_sigaction *ka, struct pt_regs *regs, */ #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; - 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); + return sys_rt_sigsuspend(uset, sizeof(sigset_t)); } #endif diff --git a/arch/mips/kernel/signal32.c b/arch/mips/kernel/signal32.c index b4f0e714cf37..0b1f57111eae 100644 --- a/arch/mips/kernel/signal32.c +++ b/arch/mips/kernel/signal32.c @@ -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. */ -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; - sigset_t newset; - - uset = (compat_sigset_t __user *) regs.regs[4]; - if (get_sigset(&newset, uset)) - return -EFAULT; - return sigsuspend(&newset); + return compat_sys_rt_sigsuspend(uset, sizeof(compat_sigset_t)); } SYSCALL_DEFINE3(32_sigaction, long, sig, const struct sigaction32 __user *, act,