summaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/ftrace.c
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2009-02-11 10:03:11 +0100
committerIngo Molnar <mingo@elte.hu>2009-02-11 10:03:11 +0100
commitd524e03207591a6de7e6b5069aabc778e3f0f5f8 (patch)
treec98f206e8df11f8ecbdd74dba79c29d1f90dea5a /arch/x86/kernel/ftrace.c
parentMerge branch 'tip/tracing/ftrace' of git://git.kernel.org/pub/scm/linux/kerne... (diff)
parentMerge branch 'tip/tracing/urgent' of git://git.kernel.org/pub/scm/linux/kerne... (diff)
downloadlinux-d524e03207591a6de7e6b5069aabc778e3f0f5f8.tar.xz
linux-d524e03207591a6de7e6b5069aabc778e3f0f5f8.zip
Merge branches 'tracing/ftrace' and 'tracing/urgent' into tracing/core
Diffstat (limited to 'arch/x86/kernel/ftrace.c')
-rw-r--r--arch/x86/kernel/ftrace.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/arch/x86/kernel/ftrace.c b/arch/x86/kernel/ftrace.c
index 18828aee8781..f20f49f7d244 100644
--- a/arch/x86/kernel/ftrace.c
+++ b/arch/x86/kernel/ftrace.c
@@ -471,13 +471,15 @@ void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr)
"1: " _ASM_MOV " (%[parent_old]), %[old]\n"
"2: " _ASM_MOV " %[return_hooker], (%[parent_replaced])\n"
" movl $0, %[faulted]\n"
+ "3:\n"
".section .fixup, \"ax\"\n"
- "3: movl $1, %[faulted]\n"
+ "4: movl $1, %[faulted]\n"
+ " jmp 3b\n"
".previous\n"
- _ASM_EXTABLE(1b, 3b)
- _ASM_EXTABLE(2b, 3b)
+ _ASM_EXTABLE(1b, 4b)
+ _ASM_EXTABLE(2b, 4b)
: [parent_replaced] "=r" (parent), [old] "=r" (old),
[faulted] "=r" (faulted)