summaryrefslogtreecommitdiff
path: root/kernel/trace/ftrace.c
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2011-09-29 21:26:16 -0400
committerSteven Rostedt <rostedt@goodmis.org>2011-10-11 09:13:25 -0400
commite0a413f619ef8bc366dafc6f8221674993b8d85f (patch)
treea6696b0e7ef5422490bdbcc28d385c031d3e4eb8 /kernel/trace/ftrace.c
parente36de1de4a5f95b7cb3e5c37d10e6bbb91833ef0 (diff)
downloadlwn-e0a413f619ef8bc366dafc6f8221674993b8d85f.tar.gz
lwn-e0a413f619ef8bc366dafc6f8221674993b8d85f.zip
tracing: Warn on output if the function tracer was found corrupted
As the function tracer is very intrusive, lots of self checks are performed on the tracer and if something is found to be strange it will shut itself down keeping it from corrupting the rest of the kernel. This shutdown may still allow functions to be traced, as the tracing only stops new modifications from happening. Trying to stop the function tracer itself can cause more harm as it requires code modification. Although a WARN_ON() is executed, a user may not notice it. To help the user see that something isn't right with the tracing of the system a big warning is added to the output of the tracer that lets the user know that their data may be incomplete. Reported-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/ftrace.c')
-rw-r--r--kernel/trace/ftrace.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c
index c3e4575e7829..077d85387908 100644
--- a/kernel/trace/ftrace.c
+++ b/kernel/trace/ftrace.c
@@ -3863,6 +3863,14 @@ void ftrace_kill(void)
}
/**
+ * Test if ftrace is dead or not.
+ */
+int ftrace_is_dead(void)
+{
+ return ftrace_disabled;
+}
+
+/**
* register_ftrace_function - register a function for profiling
* @ops - ops structure that holds the function for profiling.
*