summaryrefslogtreecommitdiff
path: root/arch
diff options
context:
space:
mode:
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>2007-06-04 09:15:56 +0400
committerPaul Mackerras <paulus@samba.org>2007-06-14 16:29:58 +0400
commit2f97cd3912428f5044fa7715293a69349fc455fa (patch)
treee4e3312c600a61b0983ed94f31d3846a853e9461 /arch
parent0edc4ffd0e50d1ab0f387d37457210bc8bf8f8da (diff)
downloadlinux-2f97cd3912428f5044fa7715293a69349fc455fa.tar.xz
[POWERPC] Less ifdef's in signal.c/signal.h
This patch moves things around a little bit in the new common signal.c and signal.h files to remove the last #ifdef in the middle of the common do_signal(). Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/kernel/signal.c15
-rw-r--r--arch/powerpc/kernel/signal.h24
2 files changed, 24 insertions, 15 deletions
diff --git a/arch/powerpc/kernel/signal.c b/arch/powerpc/kernel/signal.c
index 88d8977731ed..c434d6c4e4e6 100644
--- a/arch/powerpc/kernel/signal.c
+++ b/arch/powerpc/kernel/signal.c
@@ -16,19 +16,6 @@
#include "signal.h"
-
-#ifdef CONFIG_PPC64
-static inline int is_32bit_task(void)
-{
- return test_thread_flag(TIF_32BIT);
-}
-#else
-static inline int is_32bit_task(void)
-{
- return 1;
-}
-#endif
-
/*
* Allocate space for the signal frame
*/
@@ -161,10 +148,8 @@ int do_signal(sigset_t *oldset, struct pt_regs *regs)
else
ret = handle_signal32(signr, &ka, &info, oldset,
regs);
-#ifdef CONFIG_PPC64
} else {
ret = handle_rt_signal64(signr, &ka, &info, oldset, regs);
-#endif
}
if (ret) {
diff --git a/arch/powerpc/kernel/signal.h b/arch/powerpc/kernel/signal.h
index c284f75afe77..77efb3d5465a 100644
--- a/arch/powerpc/kernel/signal.h
+++ b/arch/powerpc/kernel/signal.h
@@ -24,8 +24,32 @@ extern int handle_rt_signal32(unsigned long sig, struct k_sigaction *ka,
siginfo_t *info, sigset_t *oldset,
struct pt_regs *regs);
+
+#ifdef CONFIG_PPC64
+
+static inline int is_32bit_task(void)
+{
+ return test_thread_flag(TIF_32BIT);
+}
+
extern int handle_rt_signal64(int signr, struct k_sigaction *ka,
siginfo_t *info, sigset_t *set,
struct pt_regs *regs);
+#else /* CONFIG_PPC64 */
+
+static inline int is_32bit_task(void)
+{
+ return 1;
+}
+
+static inline int handle_rt_signal64(int signr, struct k_sigaction *ka,
+ siginfo_t *info, sigset_t *set,
+ struct pt_regs *regs)
+{
+ return -EFAULT;
+}
+
+#endif /* !defined(CONFIG_PPC64) */
+
#endif /* _POWERPC_ARCH_SIGNAL_H */