Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1#include <linux/signal.h>
2#include "signal.h"
3
4/* provide a mapping of arch signal to internal signal # for mediation
5 * those that are always an alias SIGCLD for SIGCLHD and SIGPOLL for SIGIO
6 * map to the same entry those that may/or may not get a separate entry
7 */
8static const int sig_map[MAXMAPPED_SIG] = {
9 [0] = MAXMAPPED_SIG, /* existence test */
10 [SIGHUP] = 1,
11 [SIGINT] = 2,
12 [SIGQUIT] = 3,
13 [SIGILL] = 4,
14 [SIGTRAP] = 5, /* -, 5, - */
15 [SIGABRT] = 6, /* SIGIOT: -, 6, - */
16 [SIGBUS] = 7, /* 10, 7, 10 */
17 [SIGFPE] = 8,
18 [SIGKILL] = 9,
19 [SIGUSR1] = 10, /* 30, 10, 16 */
20 [SIGSEGV] = 11,
21 [SIGUSR2] = 12, /* 31, 12, 17 */
22 [SIGPIPE] = 13,
23 [SIGALRM] = 14,
24 [SIGTERM] = 15,
25#ifdef SIGSTKFLT
26 [SIGSTKFLT] = 16, /* -, 16, - */
27#endif
28 [SIGCHLD] = 17, /* 20, 17, 18. SIGCHLD -, -, 18 */
29 [SIGCONT] = 18, /* 19, 18, 25 */
30 [SIGSTOP] = 19, /* 17, 19, 23 */
31 [SIGTSTP] = 20, /* 18, 20, 24 */
32 [SIGTTIN] = 21, /* 21, 21, 26 */
33 [SIGTTOU] = 22, /* 22, 22, 27 */
34 [SIGURG] = 23, /* 16, 23, 21 */
35 [SIGXCPU] = 24, /* 24, 24, 30 */
36 [SIGXFSZ] = 25, /* 25, 25, 31 */
37 [SIGVTALRM] = 26, /* 26, 26, 28 */
38 [SIGPROF] = 27, /* 27, 27, 29 */
39 [SIGWINCH] = 28, /* 28, 28, 20 */
40 [SIGIO] = 29, /* SIGPOLL: 23, 29, 22 */
41 [SIGPWR] = 30, /* 29, 30, 19. SIGINFO 29, -, - */
42#ifdef SIGSYS
43 [SIGSYS] = 31, /* 12, 31, 12. often SIG LOST/UNUSED */
44#endif
45#ifdef SIGEMT
46 [SIGEMT] = 32, /* 7, - , 7 */
47#endif
48#if defined(SIGLOST) && SIGPWR != SIGLOST /* sparc */
49 [SIGLOST] = 33, /* unused on Linux */
50#endif
51#if defined(SIGUNUSED) && \
52 defined(SIGLOST) && defined(SIGSYS) && SIGLOST != SIGSYS
53 [SIGUNUSED] = 34, /* -, 31, - */
54#endif
55};
56
57/* this table is ordered post sig_map[sig] mapping */
58static const char *const sig_names[MAXMAPPED_SIGNAME] = {
59 "unknown",
60 "hup",
61 "int",
62 "quit",
63 "ill",
64 "trap",
65 "abrt",
66 "bus",
67 "fpe",
68 "kill",
69 "usr1",
70 "segv",
71 "usr2",
72 "pipe",
73 "alrm",
74 "term",
75 "stkflt",
76 "chld",
77 "cont",
78 "stop",
79 "stp",
80 "ttin",
81 "ttou",
82 "urg",
83 "xcpu",
84 "xfsz",
85 "vtalrm",
86 "prof",
87 "winch",
88 "io",
89 "pwr",
90 "sys",
91 "emt",
92 "lost",
93 "unused",
94
95 "exists", /* always last existence test mapped to MAXMAPPED_SIG */
96};
97