diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2012-11-25 22:24:19 -0500 |
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2013-02-03 15:09:22 -0500 |
| commit | 574c4866e33d648520a8bd5bf6f573ea6e554e88 (patch) | |
| tree | 354c1c42819cba60481a854281f1e130c7cec260 /include | |
| parent | 92a3ce4a1e0047215aa0a0b30cc333bd32b866a8 (diff) | |
consolidate kernel-side struct sigaction declarations
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/signal.h | 14 | ||||
| -rw-r--r-- | include/linux/syscalls.h | 2 | ||||
| -rw-r--r-- | include/uapi/asm-generic/signal.h | 6 |
3 files changed, 21 insertions, 1 deletions
diff --git a/include/linux/signal.h b/include/linux/signal.h index 01451a156ff7..0b6878e882da 100644 --- a/include/linux/signal.h +++ b/include/linux/signal.h | |||
| @@ -249,6 +249,20 @@ extern void __set_current_blocked(const sigset_t *); | |||
| 249 | extern int show_unhandled_signals; | 249 | extern int show_unhandled_signals; |
| 250 | extern int sigsuspend(sigset_t *); | 250 | extern int sigsuspend(sigset_t *); |
| 251 | 251 | ||
| 252 | struct sigaction { | ||
| 253 | #ifndef __ARCH_HAS_ODD_SIGACTION | ||
| 254 | __sighandler_t sa_handler; | ||
| 255 | unsigned long sa_flags; | ||
| 256 | #else | ||
| 257 | unsigned long sa_flags; | ||
| 258 | __sighandler_t sa_handler; | ||
| 259 | #endif | ||
| 260 | #ifdef __ARCH_HAS_SA_RESTORER | ||
| 261 | __sigrestore_t sa_restorer; | ||
| 262 | #endif | ||
| 263 | sigset_t sa_mask; /* mask last for extensibility */ | ||
| 264 | }; | ||
| 265 | |||
| 252 | struct k_sigaction { | 266 | struct k_sigaction { |
| 253 | struct sigaction sa; | 267 | struct sigaction sa; |
| 254 | #ifdef __ARCH_HAS_KA_RESTORER | 268 | #ifdef __ARCH_HAS_KA_RESTORER |
diff --git a/include/linux/syscalls.h b/include/linux/syscalls.h index d2dd2f63d220..1c4938bf901e 100644 --- a/include/linux/syscalls.h +++ b/include/linux/syscalls.h | |||
| @@ -68,11 +68,11 @@ struct sigaltstack; | |||
| 68 | #include <linux/types.h> | 68 | #include <linux/types.h> |
| 69 | #include <linux/aio_abi.h> | 69 | #include <linux/aio_abi.h> |
| 70 | #include <linux/capability.h> | 70 | #include <linux/capability.h> |
| 71 | #include <linux/signal.h> | ||
| 71 | #include <linux/list.h> | 72 | #include <linux/list.h> |
| 72 | #include <linux/bug.h> | 73 | #include <linux/bug.h> |
| 73 | #include <linux/sem.h> | 74 | #include <linux/sem.h> |
| 74 | #include <asm/siginfo.h> | 75 | #include <asm/siginfo.h> |
| 75 | #include <asm/signal.h> | ||
| 76 | #include <linux/unistd.h> | 76 | #include <linux/unistd.h> |
| 77 | #include <linux/quota.h> | 77 | #include <linux/quota.h> |
| 78 | #include <linux/key.h> | 78 | #include <linux/key.h> |
diff --git a/include/uapi/asm-generic/signal.h b/include/uapi/asm-generic/signal.h index 21e59f36c61b..9df61f1edb0f 100644 --- a/include/uapi/asm-generic/signal.h +++ b/include/uapi/asm-generic/signal.h | |||
| @@ -93,6 +93,11 @@ typedef unsigned long old_sigset_t; | |||
| 93 | 93 | ||
| 94 | #include <asm-generic/signal-defs.h> | 94 | #include <asm-generic/signal-defs.h> |
| 95 | 95 | ||
| 96 | #ifdef SA_RESTORER | ||
| 97 | #define __ARCH_HAS_SA_RESTORER | ||
| 98 | #endif | ||
| 99 | |||
| 100 | #ifndef __KERNEL__ | ||
| 96 | struct sigaction { | 101 | struct sigaction { |
| 97 | __sighandler_t sa_handler; | 102 | __sighandler_t sa_handler; |
| 98 | unsigned long sa_flags; | 103 | unsigned long sa_flags; |
| @@ -101,6 +106,7 @@ struct sigaction { | |||
| 101 | #endif | 106 | #endif |
| 102 | sigset_t sa_mask; /* mask last for extensibility */ | 107 | sigset_t sa_mask; /* mask last for extensibility */ |
| 103 | }; | 108 | }; |
| 109 | #endif | ||
| 104 | 110 | ||
| 105 | typedef struct sigaltstack { | 111 | typedef struct sigaltstack { |
| 106 | void __user *ss_sp; | 112 | void __user *ss_sp; |
