Add the rt linux 4.1.3-rt3 as base
[kvmfornfv.git] / kernel / arch / x86 / include / uapi / asm / signal.h
1 #ifndef _UAPI_ASM_X86_SIGNAL_H
2 #define _UAPI_ASM_X86_SIGNAL_H
3
4 #ifndef __ASSEMBLY__
5 #include <linux/types.h>
6 #include <linux/time.h>
7 #include <linux/compiler.h>
8
9 /* Avoid too many header ordering problems.  */
10 struct siginfo;
11
12 #ifndef __KERNEL__
13 /* Here we must cater to libcs that poke about in kernel headers.  */
14
15 #define NSIG            32
16 typedef unsigned long sigset_t;
17
18 #endif /* __KERNEL__ */
19 #endif /* __ASSEMBLY__ */
20
21
22 #define SIGHUP           1
23 #define SIGINT           2
24 #define SIGQUIT          3
25 #define SIGILL           4
26 #define SIGTRAP          5
27 #define SIGABRT          6
28 #define SIGIOT           6
29 #define SIGBUS           7
30 #define SIGFPE           8
31 #define SIGKILL          9
32 #define SIGUSR1         10
33 #define SIGSEGV         11
34 #define SIGUSR2         12
35 #define SIGPIPE         13
36 #define SIGALRM         14
37 #define SIGTERM         15
38 #define SIGSTKFLT       16
39 #define SIGCHLD         17
40 #define SIGCONT         18
41 #define SIGSTOP         19
42 #define SIGTSTP         20
43 #define SIGTTIN         21
44 #define SIGTTOU         22
45 #define SIGURG          23
46 #define SIGXCPU         24
47 #define SIGXFSZ         25
48 #define SIGVTALRM       26
49 #define SIGPROF         27
50 #define SIGWINCH        28
51 #define SIGIO           29
52 #define SIGPOLL         SIGIO
53 /*
54 #define SIGLOST         29
55 */
56 #define SIGPWR          30
57 #define SIGSYS          31
58 #define SIGUNUSED       31
59
60 /* These should not be considered constants from userland.  */
61 #define SIGRTMIN        32
62 #define SIGRTMAX        _NSIG
63
64 /*
65  * SA_FLAGS values:
66  *
67  * SA_ONSTACK indicates that a registered stack_t will be used.
68  * SA_RESTART flag to get restarting signals (which were the default long ago)
69  * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
70  * SA_RESETHAND clears the handler when the signal is delivered.
71  * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
72  * SA_NODEFER prevents the current signal from being masked in the handler.
73  *
74  * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
75  * Unix names RESETHAND and NODEFER respectively.
76  */
77 #define SA_NOCLDSTOP    0x00000001u
78 #define SA_NOCLDWAIT    0x00000002u
79 #define SA_SIGINFO      0x00000004u
80 #define SA_ONSTACK      0x08000000u
81 #define SA_RESTART      0x10000000u
82 #define SA_NODEFER      0x40000000u
83 #define SA_RESETHAND    0x80000000u
84
85 #define SA_NOMASK       SA_NODEFER
86 #define SA_ONESHOT      SA_RESETHAND
87
88 #define SA_RESTORER     0x04000000
89
90 #define MINSIGSTKSZ     2048
91 #define SIGSTKSZ        8192
92
93 #include <asm-generic/signal-defs.h>
94
95 #ifndef __ASSEMBLY__
96
97
98 # ifndef __KERNEL__
99 /* Here we must cater to libcs that poke about in kernel headers.  */
100 #ifdef __i386__
101
102 struct sigaction {
103         union {
104           __sighandler_t _sa_handler;
105           void (*_sa_sigaction)(int, struct siginfo *, void *);
106         } _u;
107         sigset_t sa_mask;
108         unsigned long sa_flags;
109         void (*sa_restorer)(void);
110 };
111
112 #define sa_handler      _u._sa_handler
113 #define sa_sigaction    _u._sa_sigaction
114
115 #else /* __i386__ */
116
117 struct sigaction {
118         __sighandler_t sa_handler;
119         unsigned long sa_flags;
120         __sigrestore_t sa_restorer;
121         sigset_t sa_mask;               /* mask last for extensibility */
122 };
123
124 #endif /* !__i386__ */
125 # endif /* ! __KERNEL__ */
126
127 typedef struct sigaltstack {
128         void __user *ss_sp;
129         int ss_flags;
130         size_t ss_size;
131 } stack_t;
132
133 #endif /* __ASSEMBLY__ */
134
135 #endif /* _UAPI_ASM_X86_SIGNAL_H */