ftrace: check for failure for all conversions
authorSteven Rostedt <srostedt@redhat.com>
Wed, 7 Oct 2009 20:57:56 +0000 (16:57 -0400)
committerSteven Rostedt <rostedt@goodmis.org>
Wed, 7 Oct 2009 21:22:24 +0000 (17:22 -0400)
Due to legacy code from back when the dynamic tracer used a daemon,
only core kernel code was checking for failures. This is no longer
the case. We must check for failures any time we perform text modifications.

Cc: stable@kernel.org
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
kernel/trace/ftrace.c

index c701476a648bd108c08ec10e11660829a6f415f5..f136fe5da07a51d6a8b36204cf3be401e9594310 100644 (file)
@@ -1074,14 +1074,9 @@ static void ftrace_replace_code(int enable)
                failed = __ftrace_replace_code(rec, enable);
                if (failed) {
                        rec->flags |= FTRACE_FL_FAILED;
-                       if ((system_state == SYSTEM_BOOTING) ||
-                           !core_kernel_text(rec->ip)) {
-                               ftrace_free_rec(rec);
-                               } else {
-                               ftrace_bug(failed, rec->ip);
-                                       /* Stop processing */
-                                       return;
-                               }
+                       ftrace_bug(failed, rec->ip);
+                       /* Stop processing */
+                       return;
                }
        } while_for_each_ftrace_rec();
 }