blob: 6d84eabbdcde6b8262515f9493539fbe2266075f [file] [log] [blame]
The Android Open Source Project1dc9e472009-03-03 19:28:35 -08001/****************************************************************************
2 ****************************************************************************
3 ***
4 *** This header was automatically generated from a Linux kernel header
5 *** of the same name, to make information necessary for userspace to
6 *** call into the kernel available to libc. It contains only constants,
7 *** structures, and macros generated from the original header, and thus,
8 *** contains no copyrightable information.
9 ***
10 ****************************************************************************
11 ****************************************************************************/
12#ifndef _ASM_X86_SIGNAL_H
13#define _ASM_X86_SIGNAL_H
Ben Cheng4b29af02012-03-07 16:14:53 -080014
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080015#ifndef __ASSEMBLY__
16#include <linux/types.h>
17#include <linux/time.h>
18#include <linux/compiler.h>
Ben Cheng4b29af02012-03-07 16:14:53 -080019
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080020struct siginfo;
Ben Cheng4b29af02012-03-07 16:14:53 -080021
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080022#define NSIG 32
23typedef unsigned long sigset_t;
Ben Cheng4b29af02012-03-07 16:14:53 -080024
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080025#endif
Ben Cheng4b29af02012-03-07 16:14:53 -080026
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080027#define SIGHUP 1
28#define SIGINT 2
29#define SIGQUIT 3
30#define SIGILL 4
31#define SIGTRAP 5
32#define SIGABRT 6
33#define SIGIOT 6
34#define SIGBUS 7
35#define SIGFPE 8
36#define SIGKILL 9
37#define SIGUSR1 10
38#define SIGSEGV 11
39#define SIGUSR2 12
40#define SIGPIPE 13
41#define SIGALRM 14
42#define SIGTERM 15
43#define SIGSTKFLT 16
44#define SIGCHLD 17
45#define SIGCONT 18
46#define SIGSTOP 19
47#define SIGTSTP 20
48#define SIGTTIN 21
49#define SIGTTOU 22
50#define SIGURG 23
51#define SIGXCPU 24
52#define SIGXFSZ 25
53#define SIGVTALRM 26
54#define SIGPROF 27
55#define SIGWINCH 28
56#define SIGIO 29
57#define SIGPOLL SIGIO
Ben Cheng4b29af02012-03-07 16:14:53 -080058
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080059#define SIGPWR 30
60#define SIGSYS 31
61#define SIGUNUSED 31
Ben Cheng4b29af02012-03-07 16:14:53 -080062
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080063#define SIGRTMIN 32
64#define SIGRTMAX _NSIG
Ben Cheng4b29af02012-03-07 16:14:53 -080065
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080066#define SA_NOCLDSTOP 0x00000001u
67#define SA_NOCLDWAIT 0x00000002u
68#define SA_SIGINFO 0x00000004u
69#define SA_ONSTACK 0x08000000u
70#define SA_RESTART 0x10000000u
71#define SA_NODEFER 0x40000000u
72#define SA_RESETHAND 0x80000000u
Ben Cheng4b29af02012-03-07 16:14:53 -080073
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080074#define SA_NOMASK SA_NODEFER
75#define SA_ONESHOT SA_RESETHAND
Ben Cheng4b29af02012-03-07 16:14:53 -080076
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080077#define SA_RESTORER 0x04000000
Ben Cheng4b29af02012-03-07 16:14:53 -080078
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080079#define SS_ONSTACK 1
80#define SS_DISABLE 2
Ben Cheng4b29af02012-03-07 16:14:53 -080081
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080082#define MINSIGSTKSZ 2048
83#define SIGSTKSZ 8192
Ben Cheng4b29af02012-03-07 16:14:53 -080084
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080085#include <asm-generic/signal.h>
Ben Cheng4b29af02012-03-07 16:14:53 -080086
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080087#ifndef __ASSEMBLY__
Ben Cheng4b29af02012-03-07 16:14:53 -080088
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080089#ifdef __i386__
Ben Cheng4b29af02012-03-07 16:14:53 -080090
The Android Open Source Project1dc9e472009-03-03 19:28:35 -080091struct sigaction {
92 union {
93 __sighandler_t _sa_handler;
94 void (*_sa_sigaction)(int, struct siginfo *, void *);
95 } _u;
96 sigset_t sa_mask;
97 unsigned long sa_flags;
98 void (*sa_restorer)(void);
99};
Ben Cheng4b29af02012-03-07 16:14:53 -0800100
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800101#define sa_handler _u._sa_handler
102#define sa_sigaction _u._sa_sigaction
Ben Cheng4b29af02012-03-07 16:14:53 -0800103
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800104#else
Ben Cheng4b29af02012-03-07 16:14:53 -0800105
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800106struct sigaction {
107 __sighandler_t sa_handler;
108 unsigned long sa_flags;
109 __sigrestore_t sa_restorer;
110 sigset_t sa_mask;
111};
Ben Cheng4b29af02012-03-07 16:14:53 -0800112
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800113struct k_sigaction {
114 struct sigaction sa;
115};
Ben Cheng4b29af02012-03-07 16:14:53 -0800116
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800117#endif
Ben Cheng4b29af02012-03-07 16:14:53 -0800118
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800119typedef struct sigaltstack {
120 void __user *ss_sp;
121 int ss_flags;
122 size_t ss_size;
123} stack_t;
Ben Cheng4b29af02012-03-07 16:14:53 -0800124
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800125#endif
Ben Cheng4b29af02012-03-07 16:14:53 -0800126
The Android Open Source Project1dc9e472009-03-03 19:28:35 -0800127#endif