Commit eb5a3699 authored by Namhyung Kim's avatar Namhyung Kim Committed by Linus Torvalds

ptrace: cleanup arch_ptrace() on x86

Remove checking @addr less than 0 because @addr is now unsigned and
use new udescp variable in order to remove unnecessary castings.

[akpm@linux-foundation.org: fix unused variable 'udescp']
Signed-off-by: default avatarNamhyung Kim <namhyung@gmail.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 9b05a69e
...@@ -813,8 +813,7 @@ long arch_ptrace(struct task_struct *child, long request, ...@@ -813,8 +813,7 @@ long arch_ptrace(struct task_struct *child, long request,
unsigned long tmp; unsigned long tmp;
ret = -EIO; ret = -EIO;
if ((addr & (sizeof(data) - 1)) || addr < 0 || if ((addr & (sizeof(data) - 1)) || addr >= sizeof(struct user))
addr >= sizeof(struct user))
break; break;
tmp = 0; /* Default return condition */ tmp = 0; /* Default return condition */
...@@ -831,8 +830,7 @@ long arch_ptrace(struct task_struct *child, long request, ...@@ -831,8 +830,7 @@ long arch_ptrace(struct task_struct *child, long request,
case PTRACE_POKEUSR: /* write the word at location addr in the USER area */ case PTRACE_POKEUSR: /* write the word at location addr in the USER area */
ret = -EIO; ret = -EIO;
if ((addr & (sizeof(data) - 1)) || addr < 0 || if ((addr & (sizeof(data) - 1)) || addr >= sizeof(struct user))
addr >= sizeof(struct user))
break; break;
if (addr < sizeof(struct user_regs_struct)) if (addr < sizeof(struct user_regs_struct))
...@@ -892,14 +890,14 @@ long arch_ptrace(struct task_struct *child, long request, ...@@ -892,14 +890,14 @@ long arch_ptrace(struct task_struct *child, long request,
if ((int) addr < 0) if ((int) addr < 0)
return -EIO; return -EIO;
ret = do_get_thread_area(child, addr, ret = do_get_thread_area(child, addr,
(struct user_desc __user *) data); (struct user_desc __user *)data);
break; break;
case PTRACE_SET_THREAD_AREA: case PTRACE_SET_THREAD_AREA:
if ((int) addr < 0) if ((int) addr < 0)
return -EIO; return -EIO;
ret = do_set_thread_area(child, addr, ret = do_set_thread_area(child, addr,
(struct user_desc __user *) data, 0); (struct user_desc __user *)data, 0);
break; break;
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment