aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2009-02-09 13:54:03 -0500
committerSteven Rostedt <srostedt@redhat.com>2009-02-18 13:43:04 -0500
commit712406a6bf59ebf4a00358bb59a4a2a1b2953d90 (patch)
tree5bea439ccacde69ba71c5da8e8e307c2d343aa93 /include/linux
parentd2f8d7ee1a9b4650b4e43325b321801264f7c37a (diff)
tracing/function-graph-tracer: make arch generic push pop functions
There is nothing really arch specific of the push and pop functions used by the function graph tracer. This patch moves them to generic code. Acked-by: Frederic Weisbecker <fweisbec@gmail.com> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/ftrace.h24
1 files changed, 24 insertions, 0 deletions
diff --git a/include/linux/ftrace.h b/include/linux/ftrace.h
index 677432b9cb7e..a7f8134c594e 100644
--- a/include/linux/ftrace.h
+++ b/include/linux/ftrace.h
@@ -380,6 +380,30 @@ struct ftrace_graph_ret {
380#ifdef CONFIG_FUNCTION_GRAPH_TRACER 380#ifdef CONFIG_FUNCTION_GRAPH_TRACER
381 381
382/* 382/*
383 * Stack of return addresses for functions
384 * of a thread.
385 * Used in struct thread_info
386 */
387struct ftrace_ret_stack {
388 unsigned long ret;
389 unsigned long func;
390 unsigned long long calltime;
391};
392
393/*
394 * Primary handler of a function return.
395 * It relays on ftrace_return_to_handler.
396 * Defined in entry_32/64.S
397 */
398extern void return_to_handler(void);
399
400extern int
401ftrace_push_return_trace(unsigned long ret, unsigned long long time,
402 unsigned long func, int *depth);
403extern void
404ftrace_pop_return_trace(struct ftrace_graph_ret *trace, unsigned long *ret);
405
406/*
383 * Sometimes we don't want to trace a function with the function 407 * Sometimes we don't want to trace a function with the function
384 * graph tracer but we want them to keep traced by the usual function 408 * graph tracer but we want them to keep traced by the usual function
385 * tracer if the function graph tracer is not configured. 409 * tracer if the function graph tracer is not configured.