1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 #ifndef _UAPI__ASM_GENERIC_SIGNAL_H
3 #define _UAPI__ASM_GENERIC_SIGNAL_H
5 #include <linux/types.h>
8 #define _NSIG_BPW __BITS_PER_LONG
9 #define _NSIG_WORDS (_NSIG / _NSIG_BPW)
49 /* These should not be considered constants from userland. */
52 #define SIGRTMAX _NSIG
58 * SA_ONSTACK indicates that a registered stack_t will be used.
59 * SA_RESTART flag to get restarting signals (which were the default long ago)
60 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
61 * SA_RESETHAND clears the handler when the signal is delivered.
62 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
63 * SA_NODEFER prevents the current signal from being masked in the handler.
65 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
66 * Unix names RESETHAND and NODEFER respectively.
68 #define SA_NOCLDSTOP 0x00000001
69 #define SA_NOCLDWAIT 0x00000002
70 #define SA_SIGINFO 0x00000004
71 #define SA_ONSTACK 0x08000000
72 #define SA_RESTART 0x10000000
73 #define SA_NODEFER 0x40000000
74 #define SA_RESETHAND 0x80000000
76 #define SA_NOMASK SA_NODEFER
77 #define SA_ONESHOT SA_RESETHAND
80 * New architectures should not define the obsolete
81 * SA_RESTORER 0x04000000
84 #if !defined MINSIGSTKSZ || !defined SIGSTKSZ
85 #define MINSIGSTKSZ 2048
91 unsigned long sig
[_NSIG_WORDS
];
94 /* not actually used, but required for linux/syscalls.h */
95 typedef unsigned long old_sigset_t
;
97 #include <asm-generic/signal-defs.h>
100 #define __ARCH_HAS_SA_RESTORER
105 __sighandler_t sa_handler
;
106 unsigned long sa_flags
;
108 __sigrestore_t sa_restorer
;
110 sigset_t sa_mask
; /* mask last for extensibility */
114 typedef struct sigaltstack
{
120 #endif /* __ASSEMBLY__ */
122 #endif /* _UAPI__ASM_GENERIC_SIGNAL_H */