1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ 2 #ifndef _UAPI_ASM_X86_SIGNAL_H 3 #define _UAPI_ASM_X86_SIGNAL_H 4 5 #ifndef __ASSEMBLY__ 6 #include <linux/types.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 #define SA_RESTORER 0x04000000 65 66 #define MINSIGSTKSZ 2048 67 #define SIGSTKSZ 8192 68 69 #include <asm-generic/signal-defs.h> 70 71 #ifndef __ASSEMBLY__ 72 73 74 # ifndef __KERNEL__ 75 /* Here we must cater to libcs that poke about in kernel headers. */ 76 #ifdef __i386__ 77 78 struct sigaction { 79 union { 80 __sighandler_t _sa_handler; 81 void (*_sa_sigaction)(int, struct siginfo *, void *); 82 } _u; 83 sigset_t sa_mask; 84 unsigned long sa_flags; 85 void (*sa_restorer)(void); 86 }; 87 88 #define sa_handler _u._sa_handler 89 #define sa_sigaction _u._sa_sigaction 90 91 #else /* __i386__ */ 92 93 struct sigaction { 94 __sighandler_t sa_handler; 95 unsigned long sa_flags; 96 __sigrestore_t sa_restorer; 97 sigset_t sa_mask; /* mask last for extensibility */ 98 }; 99 100 #endif /* !__i386__ */ 101 # endif /* ! __KERNEL__ */ 102 103 typedef struct sigaltstack { 104 void __user *ss_sp; 105 int ss_flags; 106 __kernel_size_t ss_size; 107 } stack_t; 108 109 #endif /* __ASSEMBLY__ */ 110 111 #endif /* _UAPI_ASM_X86_SIGNAL_H */ 112