diff options
| author | Jiri Olsa <jolsa@redhat.com> | 2010-04-02 19:01:22 +0200 | 
|---|---|---|
| committer | Steven Rostedt <rostedt@goodmis.org> | 2010-04-27 12:36:53 -0400 | 
| commit | 62b915f1060996a8e1f69be50e3b8e9e43b710cb (patch) | |
| tree | 26741f065b30b67022d680c3bc2afbda319638e1 /kernel/trace/trace_functions_graph.c | |
| parent | d7a8d9e907cc294ec7a4a7046d1886375fbcc82e (diff) | |
| download | olio-linux-3.10-62b915f1060996a8e1f69be50e3b8e9e43b710cb.tar.xz olio-linux-3.10-62b915f1060996a8e1f69be50e3b8e9e43b710cb.zip  | |
tracing: Add graph output support for irqsoff tracer
Add function graph output to irqsoff tracer.
The graph output is enabled by setting new 'display-graph' trace option.
Signed-off-by: Jiri Olsa <jolsa@redhat.com>
LKML-Reference: <1270227683-14631-4-git-send-email-jolsa@redhat.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/trace_functions_graph.c')
| -rw-r--r-- | kernel/trace/trace_functions_graph.c | 15 | 
1 files changed, 10 insertions, 5 deletions
diff --git a/kernel/trace/trace_functions_graph.c b/kernel/trace/trace_functions_graph.c index de5f6518aba..dd11c830eb8 100644 --- a/kernel/trace/trace_functions_graph.c +++ b/kernel/trace/trace_functions_graph.c @@ -179,7 +179,7 @@ unsigned long ftrace_return_to_handler(unsigned long frame_pointer)  	return ret;  } -static int __trace_graph_entry(struct trace_array *tr, +int __trace_graph_entry(struct trace_array *tr,  				struct ftrace_graph_ent *trace,  				unsigned long flags,  				int pc) @@ -246,7 +246,7 @@ int trace_graph_thresh_entry(struct ftrace_graph_ent *trace)  		return trace_graph_entry(trace);  } -static void __trace_graph_return(struct trace_array *tr, +void __trace_graph_return(struct trace_array *tr,  				struct ftrace_graph_ret *trace,  				unsigned long flags,  				int pc) @@ -1093,6 +1093,11 @@ print_graph_function_flags(struct trace_iterator *iter, u32 flags)  		trace_assign_type(field, entry);  		return print_graph_return(&field->ret, s, entry, iter, flags);  	} +	case TRACE_STACK: +	case TRACE_FN: +		/* dont trace stack and functions as comments */ +		return TRACE_TYPE_UNHANDLED; +  	default:  		return print_graph_comment(s, entry, iter, flags);  	} @@ -1170,12 +1175,12 @@ void print_graph_headers_flags(struct seq_file *s, u32 flags)  	seq_printf(s, "               |   |   |   |\n");  } -static void print_graph_headers(struct seq_file *s) +void print_graph_headers(struct seq_file *s)  {  	print_graph_headers_flags(s, tracer_flags.val);  } -static void graph_trace_open(struct trace_iterator *iter) +void graph_trace_open(struct trace_iterator *iter)  {  	/* pid and depth on the last trace processed */  	struct fgraph_data *data; @@ -1210,7 +1215,7 @@ static void graph_trace_open(struct trace_iterator *iter)  	pr_warning("function graph tracer: not enough memory\n");  } -static void graph_trace_close(struct trace_iterator *iter) +void graph_trace_close(struct trace_iterator *iter)  {  	struct fgraph_data *data = iter->private;  |