From 881e252d6b37d7526008e3dcd4592823d9273e1f Mon Sep 17 00:00:00 2001
From: Al Viro <viro@zeniv.linux.org.uk>
Date: Tue, 25 Dec 2012 16:20:46 -0500
Subject: sh: switch to generic old sigsuspend()

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
 arch/sh/Kconfig                   |  1 +
 arch/sh/include/asm/syscalls_32.h |  1 -
 arch/sh/kernel/signal_32.c        | 11 -----------
 arch/sh/kernel/signal_64.c        | 11 -----------
 4 files changed, 1 insertion(+), 23 deletions(-)

(limited to 'arch/sh')

diff --git a/arch/sh/Kconfig b/arch/sh/Kconfig
index fb4a212c1bc4..d69caaf818bb 100644
--- a/arch/sh/Kconfig
+++ b/arch/sh/Kconfig
@@ -41,6 +41,7 @@ config SUPERH
 	select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER
 	select MODULES_USE_ELF_RELA
 	select GENERIC_SIGALTSTACK
+	select OLD_SIGSUSPEND
 	help
 	  The SuperH is a RISC processor targeted for use in embedded systems
 	  and consumer electronics; it was also used in the Sega Dreamcast
diff --git a/arch/sh/include/asm/syscalls_32.h b/arch/sh/include/asm/syscalls_32.h
index 77e2054d678e..dc72388e6e5b 100644
--- a/arch/sh/include/asm/syscalls_32.h
+++ b/arch/sh/include/asm/syscalls_32.h
@@ -9,7 +9,6 @@
 
 struct pt_regs;
 
-asmlinkage int sys_sigsuspend(old_sigset_t mask);
 asmlinkage int sys_sigaction(int sig, const struct old_sigaction __user *act,
 			     struct old_sigaction __user *oact);
 asmlinkage int sys_sigreturn(unsigned long r4, unsigned long r5,
diff --git a/arch/sh/kernel/signal_32.c b/arch/sh/kernel/signal_32.c
index e540d07dd5c5..c660a912a470 100644
--- a/arch/sh/kernel/signal_32.c
+++ b/arch/sh/kernel/signal_32.c
@@ -46,17 +46,6 @@ struct fdpic_func_descriptor {
  */
 #define UNWINDGUARD 64
 
-/*
- * Atomically swap in the new signal mask, and wait for a signal.
- */
-asmlinkage int
-sys_sigsuspend(old_sigset_t mask)
-{
-	sigset_t blocked;
-	siginitset(&blocked, mask);
-	return sigsuspend(&blocked);
-}
-
 asmlinkage int
 sys_sigaction(int sig, const struct old_sigaction __user *act,
 	      struct old_sigaction __user *oact)
diff --git a/arch/sh/kernel/signal_64.c b/arch/sh/kernel/signal_64.c
index 0fba66e2b202..8705f3ec24f4 100644
--- a/arch/sh/kernel/signal_64.c
+++ b/arch/sh/kernel/signal_64.c
@@ -127,17 +127,6 @@ static void do_signal(struct pt_regs *regs)
 	restore_saved_sigmask();
 }
 
-/*
- * Atomically swap in the new signal mask, and wait for a signal.
- */
-asmlinkage int
-sys_sigsuspend(old_sigset_t mask)
-{
-	sigset_t blocked;
-	siginitset(&blocked, mask);
-	return sigsuspend(&blocked);
-}
-
 asmlinkage int
 sys_sigaction(int sig, const struct old_sigaction __user *act,
 	      struct old_sigaction __user *oact)
-- 
cgit v1.2.3