lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 27 Aug 2010 18:42:01 +0900 From: Namhyung Kim <namhyung@...il.com> To: Roland McGrath <roland@...hat.com>, Oleg Nesterov <oleg@...hat.com>, Arnd Bergmann <arnd@...db.de> Cc: linux-kernel@...r.kernel.org, David Howells <dhowells@...hat.com> Subject: [RFC PATCH 15/43] ptrace, frv: cleanup arch_ptrace() use new regno, datap variables in order to remove duplicated expressions and unnecessary castings. Signed-off-by: Namhyung Kim <namhyung@...il.com> Cc: David Howells <dhowells@...hat.com> --- arch/frv/kernel/ptrace.c | 25 +++++++++++-------------- 1 files changed, 11 insertions(+), 14 deletions(-) diff --git a/arch/frv/kernel/ptrace.c b/arch/frv/kernel/ptrace.c index 3d87d1c..9d68f7f 100644 --- a/arch/frv/kernel/ptrace.c +++ b/arch/frv/kernel/ptrace.c @@ -259,6 +259,8 @@ long arch_ptrace(struct task_struct *child, long request, { unsigned long tmp; int ret; + int regno = addr >> 2; + unsigned long __user *datap = (unsigned long __user *) data; switch (request) { /* read the word at location addr in the USER area. */ @@ -269,9 +271,9 @@ long arch_ptrace(struct task_struct *child, long request, break; ret = 0; - switch (addr >> 2) { + switch (regno) { case 0 ... PT__END - 1: - tmp = get_reg(child, addr >> 2); + tmp = get_reg(child, regno); break; case PT__END + 0: @@ -300,7 +302,7 @@ long arch_ptrace(struct task_struct *child, long request, } if (ret == 0) - ret = put_user(tmp, (unsigned long *) data); + ret = put_user(tmp, datap); break; } @@ -309,14 +311,9 @@ long arch_ptrace(struct task_struct *child, long request, if (addr & 3) break; - ret = 0; - switch (addr >> 2) { + switch (regno) { case 0 ... PT__END - 1: - ret = put_reg(child, addr >> 2, data); - break; - - default: - ret = -EIO; + ret = put_reg(child, regno, data); break; } break; @@ -325,25 +322,25 @@ long arch_ptrace(struct task_struct *child, long request, return copy_regset_to_user(child, &user_frv_native_view, REGSET_GENERAL, 0, sizeof(child->thread.user->i), - (void __user *)data); + datap); case PTRACE_SETREGS: /* Set all integer regs in the child. */ return copy_regset_from_user(child, &user_frv_native_view, REGSET_GENERAL, 0, sizeof(child->thread.user->i), - (const void __user *)data); + datap); case PTRACE_GETFPREGS: /* Get the child FP/Media state. */ return copy_regset_to_user(child, &user_frv_native_view, REGSET_FPMEDIA, 0, sizeof(child->thread.user->f), - (void __user *)data); + datap); case PTRACE_SETFPREGS: /* Set the child FP/Media state. */ return copy_regset_from_user(child, &user_frv_native_view, REGSET_FPMEDIA, 0, sizeof(child->thread.user->f), - (const void __user *)data); + datap); default: ret = ptrace_request(child, request, addr, data); -- 1.7.2.2 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists