ftrace-graph: Remove dependency of ftrace_stop() from ftrace_graph_stop()
authorSteven Rostedt (Red Hat) <rostedt@goodmis.org>
Wed, 25 Jun 2014 14:39:46 +0000 (10:39 -0400)
committerSteven Rostedt <rostedt@goodmis.org>
Thu, 17 Jul 2014 13:45:07 +0000 (09:45 -0400)
commit1b2f121c1418249e56048d816754b479b3cb6fb3
tree67dd1900a39a5c688492d7f4989f41161943b1e7
parent2b014666a1b93ad21c5667a4643da67bd49a5562
ftrace-graph: Remove dependency of ftrace_stop() from ftrace_graph_stop()

ftrace_stop() is going away as it disables parts of function tracing
that affects users that should not be affected. But ftrace_graph_stop()
is built on ftrace_stop(). Here's another example of killing all of
function tracing because something went wrong with function graph
tracing.

Instead of disabling all users of function tracing on function graph
error, disable only function graph tracing.

A new function is created called ftrace_graph_is_dead(). This is called
in strategic paths to prevent function graph from doing more harm and
allowing at least a warning to be printed before the system crashes.

NOTE: ftrace_stop() is still used until all the archs are converted over
to use ftrace_graph_is_dead(). After that, ftrace_stop() will be removed.

Reviewed-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
include/linux/ftrace.h
kernel/trace/ftrace.c
kernel/trace/trace_functions_graph.c