vserver 2.0 rc7
[linux-2.6.git] / arch / h8300 / kernel / ptrace.c
index 7e5cce3..f673dfd 100644 (file)
@@ -24,6 +24,7 @@
 #include <linux/ptrace.h>
 #include <linux/user.h>
 #include <linux/config.h>
+#include <linux/signal.h>
 
 #include <asm/uaccess.h>
 #include <asm/page.h>
@@ -173,7 +174,7 @@ asmlinkage int sys_ptrace(long request, long pid, long addr, long data)
                case PTRACE_SYSCALL: /* continue and stop at next (return from) syscall */
                case PTRACE_CONT: { /* restart after signal. */
                        ret = -EIO;
-                       if ((unsigned long) data >= _NSIG)
+                       if (!valid_signal(data))
                                break ;
                        if (request == PTRACE_SYSCALL)
                                set_tsk_thread_flag(child, TIF_SYSCALL_TRACE);
@@ -204,7 +205,7 @@ asmlinkage int sys_ptrace(long request, long pid, long addr, long data)
 
                case PTRACE_SINGLESTEP: {  /* set the trap flag. */
                        ret = -EIO;
-                       if ((unsigned long) data > _NSIG)
+                       if (!valid_signal(data))
                                break;
                        clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE);
                        child->exit_code = data;