1 #ifndef _ASM_POWERPC_SIGNAL_H
2 #define _ASM_POWERPC_SIGNAL_H
4 #include <linux/types.h>
5 #include <linux/config.h>
8 #define _NSIG_BPW BITS_PER_LONG
9 #define _NSIG_WORDS (_NSIG / _NSIG_BPW)
11 typedef unsigned long old_sigset_t
; /* at least 32 bits */
14 unsigned long sig
[_NSIG_WORDS
];
55 /* These should not be considered constants from userland. */
57 #define SIGRTMAX _NSIG
62 * SA_ONSTACK is not currently supported, but will allow sigaltstack(2).
63 * SA_INTERRUPT is a no-op, but left due to historical reasons. Use the
64 * SA_RESTART flag to get restarting signals (which were the default long ago)
65 * SA_NOCLDSTOP flag to turn off SIGCHLD when children stop.
66 * SA_RESETHAND clears the handler when the signal is delivered.
67 * SA_NOCLDWAIT flag on SIGCHLD to inhibit zombies.
68 * SA_NODEFER prevents the current signal from being masked in the handler.
70 * SA_ONESHOT and SA_NOMASK are the historical Linux names for the Single
71 * Unix names RESETHAND and NODEFER respectively.
73 #define SA_NOCLDSTOP 0x00000001U
74 #define SA_NOCLDWAIT 0x00000002U
75 #define SA_SIGINFO 0x00000004U
76 #define SA_ONSTACK 0x08000000U
77 #define SA_RESTART 0x10000000U
78 #define SA_NODEFER 0x40000000U
79 #define SA_RESETHAND 0x80000000U
81 #define SA_NOMASK SA_NODEFER
82 #define SA_ONESHOT SA_RESETHAND
83 #define SA_INTERRUPT 0x20000000u /* dummy -- ignored */
85 #define SA_RESTORER 0x04000000U
88 * sigaltstack controls
93 #define MINSIGSTKSZ 2048
96 #include <asm-generic/signal.h>
98 struct old_sigaction
{
99 __sighandler_t sa_handler
;
100 old_sigset_t sa_mask
;
101 unsigned long sa_flags
;
102 __sigrestore_t sa_restorer
;
106 __sighandler_t sa_handler
;
107 unsigned long sa_flags
;
108 __sigrestore_t sa_restorer
;
109 sigset_t sa_mask
; /* mask last for extensibility */
116 typedef struct sigaltstack
{
124 extern int do_signal(sigset_t
*oldset
, struct pt_regs
*regs
);
125 extern int do_signal32(sigset_t
*oldset
, struct pt_regs
*regs
);
126 #define ptrace_signal_deliver(regs, cookie) do { } while (0)
127 #endif /* __KERNEL__ */
129 #ifndef __powerpc64__
131 * These are parameters to dbg_sigreturn syscall. They enable or
132 * disable certain debugging things that can be done from signal
133 * handlers. The dbg_sigreturn syscall *must* be called from a
134 * SA_SIGINFO signal so the ucontext can be passed to it. It takes an
135 * array of struct sig_dbg_op, which has the debug operations to
136 * perform before returning from the signal.
140 unsigned long dbg_value
;
143 /* Enable or disable single-stepping. The value sets the state. */
144 #define SIG_DBG_SINGLE_STEPPING 1
146 /* Enable or disable branch tracing. The value sets the state. */
147 #define SIG_DBG_BRANCH_TRACING 2
148 #endif /* ! __powerpc64__ */
150 #endif /* _ASM_POWERPC_SIGNAL_H */