Просмотр исходного кода

[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>
Benjamin Herrenschmidt 18 лет назад
Родитель
Сommit
2f97cd3912
2 измененных файлов с 24 добавлено и 15 удалено
  1. 0 15
      arch/powerpc/kernel/signal.c
  2. 24 0
      arch/powerpc/kernel/signal.h

+ 0 - 15
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) {

+ 24 - 0
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 */