aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/trace/ftrace.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/kernel/trace/ftrace.c')
-rw-r--r--arch/powerpc/kernel/trace/ftrace.c15
1 files changed, 2 insertions, 13 deletions
diff --git a/arch/powerpc/kernel/trace/ftrace.c b/arch/powerpc/kernel/trace/ftrace.c
index 4bf051d3e21e..b65c8a34ad6e 100644
--- a/arch/powerpc/kernel/trace/ftrace.c
+++ b/arch/powerpc/kernel/trace/ftrace.c
@@ -950,7 +950,6 @@ int ftrace_disable_ftrace_graph_caller(void)
950 */ 950 */
951unsigned long prepare_ftrace_return(unsigned long parent, unsigned long ip) 951unsigned long prepare_ftrace_return(unsigned long parent, unsigned long ip)
952{ 952{
953 struct ftrace_graph_ent trace;
954 unsigned long return_hooker; 953 unsigned long return_hooker;
955 954
956 if (unlikely(ftrace_graph_is_dead())) 955 if (unlikely(ftrace_graph_is_dead()))
@@ -961,18 +960,8 @@ unsigned long prepare_ftrace_return(unsigned long parent, unsigned long ip)
961 960
962 return_hooker = ppc_function_entry(return_to_handler); 961 return_hooker = ppc_function_entry(return_to_handler);
963 962
964 trace.func = ip; 963 if (!function_graph_enter(parent, ip, 0, NULL))
965 trace.depth = current->curr_ret_stack + 1; 964 parent = return_hooker;
966
967 /* Only trace if the calling function expects to */
968 if (!ftrace_graph_entry(&trace))
969 goto out;
970
971 if (ftrace_push_return_trace(parent, ip, &trace.depth, 0,
972 NULL) == -EBUSY)
973 goto out;
974
975 parent = return_hooker;
976out: 965out:
977 return parent; 966 return parent;
978} 967}