lkml.org 
[lkml]   [2008]   [Dec]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH 4/5] ftrace: clean up function graph asm
From: Steven Rostedt <srostedt@redhat.com>

Impact: clean up

There exists macros for x86 asm to handle x86_64 and i386.
This patch updates function graph asm to use them.

Signed-off-by: Steven Rostedt <srostedt@redhat.com>
---
arch/x86/kernel/ftrace.c | 20 ++++----------------
1 files changed, 4 insertions(+), 16 deletions(-)
diff --git a/arch/x86/kernel/ftrace.c b/arch/x86/kernel/ftrace.c
index 5883247..1a5b8f8 100644
--- a/arch/x86/kernel/ftrace.c
+++ b/arch/x86/kernel/ftrace.c
@@ -467,28 +467,16 @@ void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr)
* ignore such a protection.
*/
asm volatile(
-#ifdef CONFIG_X86_64
- "1: movq (%[parent_old]), %[old]\n"
- "2: movq %[return_hooker], (%[parent_replaced])\n"
-#else
- "1: movl (%[parent_old]), %[old]\n"
- "2: movl %[return_hooker], (%[parent_replaced])\n"
-#endif
+ "1: " _ASM_MOV " (%[parent_old]), %[old]\n"
+ "2: " _ASM_MOV " %[return_hooker], (%[parent_replaced])\n"
" movl $0, %[faulted]\n"

".section .fixup, \"ax\"\n"
"3: movl $1, %[faulted]\n"
".previous\n"

- ".section __ex_table, \"a\"\n"
-#ifdef CONFIG_X86_64
- " .quad 1b, 3b\n"
- " .quad 2b, 3b\n"
-#else
- " .long 1b, 3b\n"
- " .long 2b, 3b\n"
-#endif
- ".previous\n"
+ _ASM_EXTABLE(1b, 3b)
+ _ASM_EXTABLE(2b, 3b)

: [parent_replaced] "=r" (parent), [old] "=r" (old),
[faulted] "=r" (faulted)
--
1.5.6.5
--


\
 
 \ /
  Last update: 2008-12-02 21:39    [from the cache]
©2003-2011 Jasper Spaans. Advertise on this site