tracing/ftrace: fix the check on nopped sites
authorFrederic Weisbecker <fweisbec@gmail.com>
Mon, 16 Mar 2009 21:41:00 +0000 (22:41 +0100)
committerSteven Rostedt <srostedt@redhat.com>
Tue, 17 Mar 2009 02:15:36 +0000 (22:15 -0400)
Impact: fix a dynamic tracing failure

Recently, the function and function graph tracers failed to use dynamic
tracing after the following commit:

fa9d13cf135efbd454453a53b6299976bea245a9
(ftrace: don't try to __ftrace_replace_code on !FTRACE_FL_CONVERTED rec)

The patch is right except a mistake on the check for the FTRACE_FL_CONVERTED
flag. The code patching is aborted in case of successfully nopped sites.
What we want is the opposite: ignore the callsites that haven't been nopped.

Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
kernel/trace/ftrace.c

index 90d5729..7847806 100644 (file)
@@ -537,7 +537,7 @@ static void ftrace_replace_code(int enable)
                 */
                if (rec->flags & FTRACE_FL_FREE ||
                    rec->flags & FTRACE_FL_FAILED ||
-                   rec->flags & FTRACE_FL_CONVERTED)
+                   !(rec->flags & FTRACE_FL_CONVERTED))
                        continue;
 
                /* ignore updates to this record's mcount site */