unify {de,}mangle_poll(), get rid of kernel-side POLL...
[cris-mirror.git] / include / linux / signal_types.h
blob222ae696000b966aa47a03cabf59219bcb20e4ca
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef _LINUX_SIGNAL_TYPES_H
3 #define _LINUX_SIGNAL_TYPES_H
5 /*
6 * Basic signal handling related data type definitions:
7 */
9 #include <linux/list.h>
10 #include <uapi/linux/signal.h>
13 * Real Time signals may be queued.
16 struct sigqueue {
17 struct list_head list;
18 int flags;
19 siginfo_t info;
20 struct user_struct *user;
23 /* flags values. */
24 #define SIGQUEUE_PREALLOC 1
26 struct sigpending {
27 struct list_head list;
28 sigset_t signal;
31 struct sigaction {
32 #ifndef __ARCH_HAS_IRIX_SIGACTION
33 __sighandler_t sa_handler;
34 unsigned long sa_flags;
35 #else
36 unsigned int sa_flags;
37 __sighandler_t sa_handler;
38 #endif
39 #ifdef __ARCH_HAS_SA_RESTORER
40 __sigrestore_t sa_restorer;
41 #endif
42 sigset_t sa_mask; /* mask last for extensibility */
45 struct k_sigaction {
46 struct sigaction sa;
47 #ifdef __ARCH_HAS_KA_RESTORER
48 __sigrestore_t ka_restorer;
49 #endif
52 #ifdef CONFIG_OLD_SIGACTION
53 struct old_sigaction {
54 __sighandler_t sa_handler;
55 old_sigset_t sa_mask;
56 unsigned long sa_flags;
57 __sigrestore_t sa_restorer;
59 #endif
61 struct ksignal {
62 struct k_sigaction ka;
63 siginfo_t info;
64 int sig;
67 #endif /* _LINUX_SIGNAL_TYPES_H */