~ubuntu-branches/ubuntu/precise/linux-lowlatency/precise

« back to all changes in this revision

Viewing changes to arch/m32r/include/asm/signal.h

  • Committer: Package Import Robot
  • Author(s): Alessio Igor Bogani
  • Date: 2011-10-26 11:13:05 UTC
  • Revision ID: package-import@ubuntu.com-20111026111305-tz023xykf0i6eosh
Tags: upstream-3.2.0
ImportĀ upstreamĀ versionĀ 3.2.0

Show diffs side-by-side

added added

removed removed

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