aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sh
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-12-25 16:20:46 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2013-02-03 18:16:16 -0500
commit881e252d6b37d7526008e3dcd4592823d9273e1f (patch)
tree37868d58629f177e551f5895ada10203bfb4a61a /arch/sh
parent7a879a94d90dc5c494875b54499ae321400358d8 (diff)
sh: switch to generic old sigsuspend()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'arch/sh')
-rw-r--r--arch/sh/Kconfig1
-rw-r--r--arch/sh/include/asm/syscalls_32.h1
-rw-r--r--arch/sh/kernel/signal_32.c11
-rw-r--r--arch/sh/kernel/signal_64.c11
4 files changed, 1 insertions, 23 deletions
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
41 select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER 41 select HAVE_MOD_ARCH_SPECIFIC if DWARF_UNWINDER
42 select MODULES_USE_ELF_RELA 42 select MODULES_USE_ELF_RELA
43 select GENERIC_SIGALTSTACK 43 select GENERIC_SIGALTSTACK
44 select OLD_SIGSUSPEND
44 help 45 help
45 The SuperH is a RISC processor targeted for use in embedded systems 46 The SuperH is a RISC processor targeted for use in embedded systems
46 and consumer electronics; it was also used in the Sega Dreamcast 47 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 @@
9 9
10struct pt_regs; 10struct pt_regs;
11 11
12asmlinkage int sys_sigsuspend(old_sigset_t mask);
13asmlinkage int sys_sigaction(int sig, const struct old_sigaction __user *act, 12asmlinkage int sys_sigaction(int sig, const struct old_sigaction __user *act,
14 struct old_sigaction __user *oact); 13 struct old_sigaction __user *oact);
15asmlinkage int sys_sigreturn(unsigned long r4, unsigned long r5, 14asmlinkage 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 {
46 */ 46 */
47#define UNWINDGUARD 64 47#define UNWINDGUARD 64
48 48
49/*
50 * Atomically swap in the new signal mask, and wait for a signal.
51 */
52asmlinkage int
53sys_sigsuspend(old_sigset_t mask)
54{
55 sigset_t blocked;
56 siginitset(&blocked, mask);
57 return sigsuspend(&blocked);
58}
59
60asmlinkage int 49asmlinkage int
61sys_sigaction(int sig, const struct old_sigaction __user *act, 50sys_sigaction(int sig, const struct old_sigaction __user *act,
62 struct old_sigaction __user *oact) 51 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)
127 restore_saved_sigmask(); 127 restore_saved_sigmask();
128} 128}
129 129
130/*
131 * Atomically swap in the new signal mask, and wait for a signal.
132 */
133asmlinkage int
134sys_sigsuspend(old_sigset_t mask)
135{
136 sigset_t blocked;
137 siginitset(&blocked, mask);
138 return sigsuspend(&blocked);
139}
140
141asmlinkage int 130asmlinkage int
142sys_sigaction(int sig, const struct old_sigaction __user *act, 131sys_sigaction(int sig, const struct old_sigaction __user *act,
143 struct old_sigaction __user *oact) 132 struct old_sigaction __user *oact)