]> git.proxmox.com Git - mirror_qemu.git/blame - linux-user/hppa/target_signal.h
linux-user: Remove TARGET_SIGSTKSZ
[mirror_qemu.git] / linux-user / hppa / target_signal.h
CommitLineData
925ccf32
RH
1#ifndef HPPA_TARGET_SIGNAL_H
2#define HPPA_TARGET_SIGNAL_H
3
db30b1aa
LV
4#define TARGET_SIGHUP 1
5#define TARGET_SIGINT 2
6#define TARGET_SIGQUIT 3
7#define TARGET_SIGILL 4
8#define TARGET_SIGTRAP 5
9#define TARGET_SIGABRT 6
10#define TARGET_SIGIOT 6
11#define TARGET_SIGSTKFLT 7
12#define TARGET_SIGFPE 8
13#define TARGET_SIGKILL 9
14#define TARGET_SIGBUS 10
15#define TARGET_SIGSEGV 11
16#define TARGET_SIGXCPU 12
17#define TARGET_SIGPIPE 13
18#define TARGET_SIGALRM 14
19#define TARGET_SIGTERM 15
20#define TARGET_SIGUSR1 16
21#define TARGET_SIGUSR2 17
22#define TARGET_SIGCHLD 18
23#define TARGET_SIGPWR 19
24#define TARGET_SIGVTALRM 20
25#define TARGET_SIGPROF 21
26#define TARGET_SIGIO 22
27#define TARGET_SIGPOLL TARGET_SIGIO
28#define TARGET_SIGWINCH 23
29#define TARGET_SIGSTOP 24
30#define TARGET_SIGTSTP 25
31#define TARGET_SIGCONT 26
32#define TARGET_SIGTTIN 27
33#define TARGET_SIGTTOU 28
34#define TARGET_SIGURG 29
35#define TARGET_SIGXFSZ 30
36#define TARGET_SIGSYS 31
9d660adc 37#define TARGET_SIGRTMIN 32
db30b1aa
LV
38
39#define TARGET_SIG_BLOCK 0
40#define TARGET_SIG_UNBLOCK 1
41#define TARGET_SIG_SETMASK 2
42
925ccf32
RH
43/* this struct defines a stack used during syscall handling */
44
45typedef struct target_sigaltstack {
46 abi_ulong ss_sp;
ce437484 47 abi_int ss_flags;
925ccf32
RH
48 abi_ulong ss_size;
49} target_stack_t;
50
51
52/*
53 * sigaltstack controls
54 */
55#define TARGET_SS_ONSTACK 1
56#define TARGET_SS_DISABLE 2
57
db30b1aa
LV
58#define TARGET_SA_ONSTACK 0x00000001
59#define TARGET_SA_RESETHAND 0x00000004
60#define TARGET_SA_NOCLDSTOP 0x00000008
61#define TARGET_SA_SIGINFO 0x00000010
62#define TARGET_SA_NODEFER 0x00000020
63#define TARGET_SA_RESTART 0x00000040
64#define TARGET_SA_NOCLDWAIT 0x00000080
65
925ccf32 66#define TARGET_MINSIGSTKSZ 2048
925ccf32 67
fba08745
CG
68/* bit-flags */
69#define TARGET_SS_AUTODISARM (1U << 31) /* disable sas during sighandling */
70/* mask for all SS_xxx flags */
71#define TARGET_SS_FLAG_BITS TARGET_SS_AUTODISARM
72
a22fccd8
RH
73/*
74 * We cannot use a bare sigtramp page for hppa-linux.
75 *
76 * Unlike other guests where we use the instructions at PC to validate
77 * an offset from SP, the hppa libgcc signal frame fallback unwinding uses
78 * the PC address itself to find the frame. This is due to the fact that
79 * the hppa grows the stack upward, and the frame is of unknown size.
80 *
81 * TODO: We should be able to use a VDSO to address this, by providing
82 * proper unwind info for the sigtramp code, at which point the fallback
83 * unwinder will not be used.
84 */
85#define TARGET_ARCH_HAS_SIGTRAMP_PAGE 0
86
925ccf32 87#endif /* HPPA_TARGET_SIGNAL_H */