[PATCH] convert that currently tests _NSIG directly to use valid_signal()
[linux-2.6-block.git] / arch / parisc / kernel / ptrace.c
index 2937a9236384ab90063773a3fe62aee6fbe2d633..c07db9dff7cd8604980b00fd2e8e5bf78e4dcc57 100644 (file)
@@ -17,6 +17,7 @@
 #include <linux/personality.h>
 #include <linux/security.h>
 #include <linux/compat.h>
+#include <linux/signal.h>
 
 #include <asm/uaccess.h>
 #include <asm/pgtable.h>
@@ -285,7 +286,7 @@ long sys_ptrace(long request, pid_t pid, long addr, long data)
                ret = -EIO;
                DBG("sys_ptrace(%s)\n",
                        request == PTRACE_SYSCALL ? "SYSCALL" : "CONT");
-               if ((unsigned long) data > _NSIG)
+               if (!valid_signal(data))
                        goto out_tsk;
                child->ptrace &= ~(PT_SINGLESTEP|PT_BLOCKSTEP);
                if (request == PTRACE_SYSCALL) {
@@ -311,7 +312,7 @@ long sys_ptrace(long request, pid_t pid, long addr, long data)
        case PTRACE_SINGLEBLOCK:
                DBG("sys_ptrace(SINGLEBLOCK)\n");
                ret = -EIO;
-               if ((unsigned long) data > _NSIG)
+               if (!valid_signal(data))
                        goto out_tsk;
                clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE);
                child->ptrace &= ~PT_SINGLESTEP;
@@ -328,7 +329,7 @@ long sys_ptrace(long request, pid_t pid, long addr, long data)
        case PTRACE_SINGLESTEP:
                DBG("sys_ptrace(SINGLESTEP)\n");
                ret = -EIO;
-               if ((unsigned long) data > _NSIG)
+               if (!valid_signal(data))
                        goto out_tsk;
 
                clear_tsk_thread_flag(child, TIF_SYSCALL_TRACE);