diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2007-02-15 14:40:37 +0300 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2007-02-19 00:31:35 +0300 |
commit | 151fd6acd94e12ef3a7d5fa0911a2590690c493f (patch) | |
tree | 33623a4cf6c6ce7c134f3cc5624dbcac26817238 /include | |
parent | 38201fb23cd554f942702cd938c3215a76296c87 (diff) | |
download | linux-151fd6acd94e12ef3a7d5fa0911a2590690c493f.tar.xz |
[MIPS] signals: Share even more code.
native and compat do_signal and handle_signal are identical and can easily
be unified.
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/asm-mips/abi.h | 2 | ||||
-rw-r--r-- | include/asm-mips/compat-signal.h | 3 | ||||
-rw-r--r-- | include/asm-mips/signal.h | 17 |
3 files changed, 4 insertions, 18 deletions
diff --git a/include/asm-mips/abi.h b/include/asm-mips/abi.h index 1ce0518ace2e..1dd74fbdc09b 100644 --- a/include/asm-mips/abi.h +++ b/include/asm-mips/abi.h @@ -13,13 +13,13 @@ #include <asm/siginfo.h> struct mips_abi { - void (* const do_signal)(struct pt_regs *regs); int (* const setup_frame)(struct k_sigaction * ka, struct pt_regs *regs, int signr, sigset_t *set); int (* const setup_rt_frame)(struct k_sigaction * ka, struct pt_regs *regs, int signr, sigset_t *set, siginfo_t *info); + const unsigned long restart; }; #endif /* _ASM_ABI_H */ diff --git a/include/asm-mips/compat-signal.h b/include/asm-mips/compat-signal.h index 20ac29ffa7c8..6599a901b63e 100644 --- a/include/asm-mips/compat-signal.h +++ b/include/asm-mips/compat-signal.h @@ -5,6 +5,9 @@ #include <linux/compat.h> #include <linux/compiler.h> +#include <asm/signal.h> +#include <asm/siginfo.h> + #include <asm/uaccess.h> static inline int __copy_conv_sigset_to_user(compat_sigset_t __user *d, diff --git a/include/asm-mips/signal.h b/include/asm-mips/signal.h index 8b391a2f0814..7a28989f7ee3 100644 --- a/include/asm-mips/signal.h +++ b/include/asm-mips/signal.h @@ -137,23 +137,6 @@ typedef struct sigaltstack { #define ptrace_signal_deliver(regs, cookie) do { } while (0) -struct pt_regs; -extern void do_signal(struct pt_regs *regs); -extern void do_signal32(struct pt_regs *regs); - -extern int setup_frame(struct k_sigaction * ka, struct pt_regs *regs, - int signr, sigset_t *set); -extern int setup_rt_frame(struct k_sigaction * ka, struct pt_regs *regs, - int signr, sigset_t *set, siginfo_t *info); - -extern int setup_frame_32(struct k_sigaction * ka, struct pt_regs *regs, - int signr, sigset_t *set); -extern int setup_rt_frame_32(struct k_sigaction * ka, struct pt_regs *regs, - int signr, sigset_t *set, siginfo_t *info); - -extern int setup_rt_frame_n32(struct k_sigaction * ka, struct pt_regs *regs, - int signr, sigset_t *set, siginfo_t *info); - #endif /* __KERNEL__ */ #endif /* _ASM_SIGNAL_H */ |