aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2008-11-11 05:18:14 -0500
committerIngo Molnar <mingo@elte.hu>2008-11-11 05:12:18 -0500
commit867f7fb3ebb831970847b179e7df5a9ab10da16d (patch)
treee4a7b3807955af5d9c6e4c00376d44b2c3b3b5ea
parentf1c4be5edad3756212cbbbeab39428fe90c27109 (diff)
tracing, x86: function return tracer, fix assembly constraints
fix: arch/x86/kernel/ftrace.c: Assembler messages: arch/x86/kernel/ftrace.c:140: Error: missing ')' arch/x86/kernel/ftrace.c:140: Error: junk `(%ebp))' after expression arch/x86/kernel/ftrace.c:141: Error: missing ')' arch/x86/kernel/ftrace.c:141: Error: junk `(%ebp))' after expression the [parent_replaced] is used in an =rm fashion, so that constraint is correct in isolation - but [parent_old] aliases register %0 and uses it in an addressing mode that is only valid with registers - so change the constraint from =rm to =r. This fixes the build failure. Signed-off-by: Ingo Molnar <mingo@elte.hu>
-rw-r--r--arch/x86/kernel/ftrace.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kernel/ftrace.c b/arch/x86/kernel/ftrace.c
index d68033bba223..9b2325a4d53c 100644
--- a/arch/x86/kernel/ftrace.c
+++ b/arch/x86/kernel/ftrace.c
@@ -151,7 +151,7 @@ void prepare_ftrace_return(unsigned long *parent, unsigned long self_addr)
151 " .long 2b, 3b\n" 151 " .long 2b, 3b\n"
152 ".previous\n" 152 ".previous\n"
153 153
154 : [parent_replaced] "=rm" (parent), [old] "=r" (old), 154 : [parent_replaced] "=r" (parent), [old] "=r" (old),
155 [faulted] "=r" (faulted) 155 [faulted] "=r" (faulted)
156 : [parent_old] "0" (parent), [return_hooker] "r" (return_hooker) 156 : [parent_old] "0" (parent), [return_hooker] "r" (return_hooker)
157 : "memory" 157 : "memory"