aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-02-23 21:50:11 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2013-02-23 21:50:11 -0500
commit9e2d59ad580d590134285f361a0e80f0e98c0207 (patch)
treef3232be75781484193413f32ec82c21f6d8eb76e /arch/sparc/include
parent5ce1a70e2f00f0bce0cab57f798ca354b9496169 (diff)
parent235b80226b986dabcbba844968f7807866bd0bfe (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal
Pull signal handling cleanups from Al Viro: "This is the first pile; another one will come a bit later and will contain SYSCALL_DEFINE-related patches. - a bunch of signal-related syscalls (both native and compat) unified. - a bunch of compat syscalls switched to COMPAT_SYSCALL_DEFINE (fixing several potential problems with missing argument validation, while we are at it) - a lot of now-pointless wrappers killed - a couple of architectures (cris and hexagon) forgot to save altstack settings into sigframe, even though they used the (uninitialized) values in sigreturn; fixed. - microblaze fixes for delivery of multiple signals arriving at once - saner set of helpers for signal delivery introduced, several architectures switched to using those." * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: (143 commits) x86: convert to ksignal sparc: convert to ksignal arm: switch to struct ksignal * passing alpha: pass k_sigaction and siginfo_t using ksignal pointer burying unused conditionals make do_sigaltstack() static arm64: switch to generic old sigaction() (compat-only) arm64: switch to generic compat rt_sigaction() arm64: switch compat to generic old sigsuspend arm64: switch to generic compat rt_sigqueueinfo() arm64: switch to generic compat rt_sigpending() arm64: switch to generic compat rt_sigprocmask() arm64: switch to generic sigaltstack sparc: switch to generic old sigsuspend sparc: COMPAT_SYSCALL_DEFINE does all sign-extension as well as SYSCALL_DEFINE sparc: kill sign-extending wrappers for native syscalls kill sparc32_open() sparc: switch to use of generic old sigaction sparc: switch sys_compat_rt_sigaction() to COMPAT_SYSCALL_DEFINE mips: switch to generic sys_fork() and sys_clone() ...
Diffstat (limited to 'arch/sparc/include')
-rw-r--r--arch/sparc/include/asm/compat_signal.h6
-rw-r--r--arch/sparc/include/asm/signal.h6
-rw-r--r--arch/sparc/include/asm/unistd.h3
-rw-r--r--arch/sparc/include/uapi/asm/signal.h2
4 files changed, 4 insertions, 13 deletions
diff --git a/arch/sparc/include/asm/compat_signal.h b/arch/sparc/include/asm/compat_signal.h
index b759eab9b51c..9ed1f128b4d1 100644
--- a/arch/sparc/include/asm/compat_signal.h
+++ b/arch/sparc/include/asm/compat_signal.h
@@ -18,12 +18,6 @@ struct __old_sigaction32 {
18 unsigned int sa_flags; 18 unsigned int sa_flags;
19 unsigned sa_restorer; /* not used by Linux/SPARC yet */ 19 unsigned sa_restorer; /* not used by Linux/SPARC yet */
20}; 20};
21
22typedef struct sigaltstack32 {
23 u32 ss_sp;
24 int ss_flags;
25 compat_size_t ss_size;
26} stack_t32;
27#endif 21#endif
28 22
29#endif /* !(_COMPAT_SIGNAL_H) */ 23#endif /* !(_COMPAT_SIGNAL_H) */
diff --git a/arch/sparc/include/asm/signal.h b/arch/sparc/include/asm/signal.h
index 77b85850d543..c33ce3f2ba84 100644
--- a/arch/sparc/include/asm/signal.h
+++ b/arch/sparc/include/asm/signal.h
@@ -21,10 +21,8 @@
21 */ 21 */
22#define SA_STATIC_ALLOC 0x8000 22#define SA_STATIC_ALLOC 0x8000
23 23
24struct k_sigaction { 24#define __ARCH_HAS_KA_RESTORER
25 struct __new_sigaction sa; 25#define __ARCH_HAS_SA_RESTORER
26 void __user *ka_restorer;
27};
28 26
29#endif /* !(__ASSEMBLY__) */ 27#endif /* !(__ASSEMBLY__) */
30#endif /* !(__SPARC_SIGNAL_H) */ 28#endif /* !(__SPARC_SIGNAL_H) */
diff --git a/arch/sparc/include/asm/unistd.h b/arch/sparc/include/asm/unistd.h
index 87ce24c5eb95..5356810bd7e7 100644
--- a/arch/sparc/include/asm/unistd.h
+++ b/arch/sparc/include/asm/unistd.h
@@ -38,14 +38,11 @@
38#define __ARCH_WANT_SYS_OLDUMOUNT 38#define __ARCH_WANT_SYS_OLDUMOUNT
39#define __ARCH_WANT_SYS_SIGPENDING 39#define __ARCH_WANT_SYS_SIGPENDING
40#define __ARCH_WANT_SYS_SIGPROCMASK 40#define __ARCH_WANT_SYS_SIGPROCMASK
41#define __ARCH_WANT_SYS_RT_SIGSUSPEND
42#ifdef __32bit_syscall_numbers__ 41#ifdef __32bit_syscall_numbers__
43#define __ARCH_WANT_SYS_IPC 42#define __ARCH_WANT_SYS_IPC
44#else 43#else
45#define __ARCH_WANT_COMPAT_SYS_TIME 44#define __ARCH_WANT_COMPAT_SYS_TIME
46#define __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND
47#define __ARCH_WANT_COMPAT_SYS_SENDFILE 45#define __ARCH_WANT_COMPAT_SYS_SENDFILE
48#define __ARCH_WANT_COMPAT_SYS_SCHED_RR_GET_INTERVAL
49#endif 46#endif
50 47
51/* 48/*
diff --git a/arch/sparc/include/uapi/asm/signal.h b/arch/sparc/include/uapi/asm/signal.h
index c4ffd6c97106..f387400fcfdf 100644
--- a/arch/sparc/include/uapi/asm/signal.h
+++ b/arch/sparc/include/uapi/asm/signal.h
@@ -153,6 +153,7 @@ struct sigstack {
153 153
154#include <asm-generic/signal-defs.h> 154#include <asm-generic/signal-defs.h>
155 155
156#ifndef __KERNEL__
156struct __new_sigaction { 157struct __new_sigaction {
157 __sighandler_t sa_handler; 158 __sighandler_t sa_handler;
158 unsigned long sa_flags; 159 unsigned long sa_flags;
@@ -166,6 +167,7 @@ struct __old_sigaction {
166 unsigned long sa_flags; 167 unsigned long sa_flags;
167 void (*sa_restorer)(void); /* not used by Linux/SPARC yet */ 168 void (*sa_restorer)(void); /* not used by Linux/SPARC yet */
168}; 169};
170#endif
169 171
170typedef struct sigaltstack { 172typedef struct sigaltstack {
171 void __user *ss_sp; 173 void __user *ss_sp;