OSDN Git Service

tracing: Fix graph tracer with stack tracer on other archs
authorSteven Rostedt (Red Hat) <rostedt@goodmis.org>
Tue, 15 Jul 2014 15:05:12 +0000 (11:05 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 28 Jul 2014 15:00:03 +0000 (08:00 -0700)
commit9b87c4e58f2143ba9bc05ffff22d86d172e4f4ac
tree16d193af4c1adffafe64aeaf9b85e86ea920745d
parentd609df085cf9333cfda02a398d74694e7f2a644c
tracing: Fix graph tracer with stack tracer on other archs

commit 5f8bf2d263a20b986225ae1ed7d6759dc4b93af9 upstream.

Running my ftrace tests on PowerPC, it failed the test that checks
if function_graph tracer is affected by the stack tracer. It was.
Looking into this, I found that the update_function_graph_func()
must be called even if the trampoline function is not changed.
This is because archs like PowerPC do not support ftrace_ops being
passed by assembly and instead uses a helper function (what the
trampoline function points to). Since this function is not changed
even when multiple ftrace_ops are added to the code, the test that
falls out before calling update_function_graph_func() will miss that
the update must still be done.

Call update_function_graph_function() for all calls to
update_ftrace_function()

Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
kernel/trace/ftrace.c