summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2009-10-07 16:57:56 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2009-10-12 12:40:09 -0700
commit1afc593a47447345649bc850a07b0741b8aa3caf (patch)
treed97c247b5ad472330026171bc9184fa21e1d21bd
parent6e4be6c9d0044778a2ed1c88aafd95bd04f58705 (diff)
downloadlwn-1afc593a47447345649bc850a07b0741b8aa3caf.tar.gz
lwn-1afc593a47447345649bc850a07b0741b8aa3caf.zip
ftrace: check for failure for all conversions
commit 3279ba37db5d65c4ab0dcdee3b211ccb85bb563f upstream. 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. Signed-off-by: Steven Rostedt <rostedt@goodmis.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--kernel/trace/ftrace.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
index 27510fa47e7b..52eb25189928 100644
--- a/kernel/trace/ftrace.c
+++ b/kernel/trace/ftrace.c
@@ -1110,14 +1110,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();
}