s390/comments: unify copyright messages and remove file names
[deliverable/linux.git] / arch / s390 / include / asm / signal.h
CommitLineData
1da177e4 1/*
1da177e4
LT
2 * S390 version
3 *
4 * Derived from "include/asm-i386/signal.h"
5 */
6
7#ifndef _ASMS390_SIGNAL_H
8#define _ASMS390_SIGNAL_H
9
10#include <linux/types.h>
11#include <linux/time.h>
12
13/* Avoid too many header ordering problems. */
14struct siginfo;
15struct pt_regs;
16
17#ifdef __KERNEL__
18/* Most things should be clean enough to redefine this at will, if care
19 is taken to make libc match. */
20#include <asm/sigcontext.h>
21#define _NSIG _SIGCONTEXT_NSIG
22#define _NSIG_BPW _SIGCONTEXT_NSIG_BPW
23#define _NSIG_WORDS _SIGCONTEXT_NSIG_WORDS
24
25typedef unsigned long old_sigset_t; /* at least 32 bits */
26
27typedef struct {
28 unsigned long sig[_NSIG_WORDS];
29} sigset_t;
30
31#else
32/* Here we must cater to libcs that poke about in kernel headers. */
33
34#define NSIG 32
35typedef unsigned long sigset_t;
36
37#endif /* __KERNEL__ */
38
39#define SIGHUP 1
40#define SIGINT 2
41#define SIGQUIT 3
42#define SIGILL 4
43#define SIGTRAP 5
44#define SIGABRT 6
45#define SIGIOT 6
46#define SIGBUS 7
47#define SIGFPE 8
48#define SIGKILL 9
49#define SIGUSR1 10
50#define SIGSEGV 11
51#define SIGUSR2 12
52#define SIGPIPE 13
53#define SIGALRM 14
54#define SIGTERM 15
55#define SIGSTKFLT 16
56#define SIGCHLD 17
57#define SIGCONT 18
58#define SIGSTOP 19
59#define SIGTSTP 20
60#define SIGTTIN 21
61#define SIGTTOU 22
62#define SIGURG 23
63#define SIGXCPU 24
64#define SIGXFSZ 25
65#define SIGVTALRM 26
66#define SIGPROF 27
67#define SIGWINCH 28
68#define SIGIO 29
69#define SIGPOLL SIGIO
70/*
71#define SIGLOST 29
72*/
73#define SIGPWR 30
74#define SIGSYS 31
75#define SIGUNUSED 31
76
77/* These should not be considered constants from userland. */
78#define SIGRTMIN 32
79#define SIGRTMAX _NSIG
80
81/*
82 * SA_FLAGS values:
83 *
84 * SA_ONSTACK indicates that a registered stack_t will be used.
1da177e4
LT
85 * SA_RESTART flag to get restarting signals (which were the default long ago)
86 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
87 * SA_RESETHAND clears the handler when the signal is delivered.
88 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
89 * SA_NODEFER prevents the current signal from being masked in the handler.
90 *
91 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
92 * Unix names RESETHAND and NODEFER respectively.
93 */
94#define SA_NOCLDSTOP 0x00000001
95#define SA_NOCLDWAIT 0x00000002
96#define SA_SIGINFO 0x00000004
97#define SA_ONSTACK 0x08000000
98#define SA_RESTART 0x10000000
99#define SA_NODEFER 0x40000000
100#define SA_RESETHAND 0x80000000
101
102#define SA_NOMASK SA_NODEFER
103#define SA_ONESHOT SA_RESETHAND
1da177e4
LT
104
105#define SA_RESTORER 0x04000000
106
107/*
108 * sigaltstack controls
109 */
110#define SS_ONSTACK 1
111#define SS_DISABLE 2
112
113#define MINSIGSTKSZ 2048
114#define SIGSTKSZ 8192
115
63b852a6 116#include <asm-generic/signal-defs.h>
1da177e4
LT
117
118#ifdef __KERNEL__
119struct old_sigaction {
120 __sighandler_t sa_handler;
121 old_sigset_t sa_mask;
122 unsigned long sa_flags;
123 void (*sa_restorer)(void);
124};
125
126struct sigaction {
127 __sighandler_t sa_handler;
128 unsigned long sa_flags;
129 void (*sa_restorer)(void);
130 sigset_t sa_mask; /* mask last for extensibility */
131};
132
133struct k_sigaction {
134 struct sigaction sa;
135};
136
137#define ptrace_signal_deliver(regs, cookie) do { } while (0)
138
139#else
140/* Here we must cater to libcs that poke about in kernel headers. */
141
142struct sigaction {
143 union {
144 __sighandler_t _sa_handler;
145 void (*_sa_sigaction)(int, struct siginfo *, void *);
146 } _u;
147#ifndef __s390x__ /* lovely */
148 sigset_t sa_mask;
149 unsigned long sa_flags;
150 void (*sa_restorer)(void);
151#else /* __s390x__ */
152 unsigned long sa_flags;
153 void (*sa_restorer)(void);
154 sigset_t sa_mask;
155#endif /* __s390x__ */
156};
157
158#define sa_handler _u._sa_handler
159#define sa_sigaction _u._sa_sigaction
160
161#endif /* __KERNEL__ */
162
163typedef struct sigaltstack {
c2814476 164 void __user *ss_sp;
1da177e4
LT
165 int ss_flags;
166 size_t ss_size;
167} stack_t;
168
169
170#endif
This page took 0.593808 seconds and 5 git commands to generate.