s390: switch to generic old sigsuspend
authorAl Viro <viro@zeniv.linux.org.uk>
Tue, 25 Dec 2012 21:21:29 +0000 (16:21 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Sun, 3 Feb 2013 23:16:13 +0000 (18:16 -0500)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/s390/Kconfig
arch/s390/kernel/entry.h
arch/s390/kernel/signal.c

index 0193647..17ba4f3 100644 (file)
@@ -144,6 +144,7 @@ config S390
        select GENERIC_COMPAT_RT_SIGQUEUEINFO
        select GENERIC_COMPAT_RT_SIGPROCMASK
        select GENERIC_COMPAT_RT_SIGPENDING
+       select OLD_SIGSUSPEND3
 
 config SCHED_OMIT_FRAME_POINTER
        def_bool y
index d56319a..ee1a8b3 100644 (file)
@@ -73,7 +73,6 @@ long sys_s390_fadvise64(int fd, u32 offset_high, u32 offset_low,
 long sys_s390_fadvise64_64(struct fadvise64_64_args __user *args);
 long sys_s390_fallocate(int fd, int mode, loff_t offset, u32 len_high,
                        u32 len_low);
-long sys_sigsuspend(int history0, int history1, old_sigset_t mask);
 long sys_sigaction(int sig, const struct old_sigaction __user *act,
                   struct old_sigaction __user *oact);
 long sys_sigreturn(void);
index fda4148..0bc5c9d 100644 (file)
@@ -48,16 +48,6 @@ typedef struct
        struct ucontext uc;
 } rt_sigframe;
 
-/*
- * Atomically swap in the new signal mask, and wait for a signal.
- */
-SYSCALL_DEFINE3(sigsuspend, int, history0, int, history1, old_sigset_t, mask)
-{
-       sigset_t blocked;
-       siginitset(&blocked, mask);
-       return sigsuspend(&blocked);
-}
-
 SYSCALL_DEFINE3(sigaction, int, sig, const struct old_sigaction __user *, act,
                struct old_sigaction __user *, oact)
 {