master
1/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2#ifndef _ASMARM_SIGNAL_H
3#define _ASMARM_SIGNAL_H
4
5#include <linux/types.h>
6
7/* Avoid too many header ordering problems. */
8struct siginfo;
9
10/* Here we must cater to libcs that poke about in kernel headers. */
11
12#define NSIG 32
13typedef unsigned long sigset_t;
14
15
16#define SIGHUP 1
17#define SIGINT 2
18#define SIGQUIT 3
19#define SIGILL 4
20#define SIGTRAP 5
21#define SIGABRT 6
22#define SIGIOT 6
23#define SIGBUS 7
24#define SIGFPE 8
25#define SIGKILL 9
26#define SIGUSR1 10
27#define SIGSEGV 11
28#define SIGUSR2 12
29#define SIGPIPE 13
30#define SIGALRM 14
31#define SIGTERM 15
32#define SIGSTKFLT 16
33#define SIGCHLD 17
34#define SIGCONT 18
35#define SIGSTOP 19
36#define SIGTSTP 20
37#define SIGTTIN 21
38#define SIGTTOU 22
39#define SIGURG 23
40#define SIGXCPU 24
41#define SIGXFSZ 25
42#define SIGVTALRM 26
43#define SIGPROF 27
44#define SIGWINCH 28
45#define SIGIO 29
46#define SIGPOLL SIGIO
47/*
48#define SIGLOST 29
49*/
50#define SIGPWR 30
51#define SIGSYS 31
52#define SIGUNUSED 31
53
54/* These should not be considered constants from userland. */
55#define SIGRTMIN 32
56#define SIGRTMAX _NSIG
57
58#define SIGSWI 32
59
60/*
61 * SA_THIRTYTWO historically meant deliver the signal in 32-bit mode, even if
62 * the task is running in 26-bit. But since the kernel no longer supports
63 * 26-bit mode, the flag has no effect.
64 */
65#define SA_THIRTYTWO 0x02000000
66#define SA_RESTORER 0x04000000
67
68#define MINSIGSTKSZ 2048
69#define SIGSTKSZ 8192
70
71#include <asm-generic/signal-defs.h>
72
73/* Here we must cater to libcs that poke about in kernel headers. */
74
75struct sigaction {
76 union {
77 __sighandler_t _sa_handler;
78 void (*_sa_sigaction)(int, struct siginfo *, void *);
79 } _u;
80 sigset_t sa_mask;
81 unsigned long sa_flags;
82 void (*sa_restorer)(void);
83};
84
85#define sa_handler _u._sa_handler
86#define sa_sigaction _u._sa_sigaction
87
88
89typedef struct sigaltstack {
90 void *ss_sp;
91 int ss_flags;
92 __kernel_size_t ss_size;
93} stack_t;
94
95
96#endif /* _ASMARM_SIGNAL_H */