tracing/function-graph-tracer: implement a print_headers function
Impact: provide trace headers to explain a bit the output This patch implements the print_headers callback for the function graph tracer. These headers are output according to the current trace options. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Acked-by: Steven Rostedt <rostedt@goodmis.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
21bbecdaae
commit
decbec3838
|
@ -570,11 +570,36 @@ print_graph_function(struct trace_iterator *iter)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void print_graph_headers(struct seq_file *s)
|
||||||
|
{
|
||||||
|
/* 1st line */
|
||||||
|
seq_printf(s, "# ");
|
||||||
|
if (tracer_flags.val & TRACE_GRAPH_PRINT_CPU)
|
||||||
|
seq_printf(s, "CPU ");
|
||||||
|
if (tracer_flags.val & TRACE_GRAPH_PRINT_PROC)
|
||||||
|
seq_printf(s, "TASK/PID ");
|
||||||
|
if (tracer_flags.val & TRACE_GRAPH_PRINT_OVERHEAD)
|
||||||
|
seq_printf(s, "OVERHEAD/");
|
||||||
|
seq_printf(s, "DURATION FUNCTION CALLS\n");
|
||||||
|
|
||||||
|
/* 2nd line */
|
||||||
|
seq_printf(s, "# ");
|
||||||
|
if (tracer_flags.val & TRACE_GRAPH_PRINT_CPU)
|
||||||
|
seq_printf(s, "| ");
|
||||||
|
if (tracer_flags.val & TRACE_GRAPH_PRINT_PROC)
|
||||||
|
seq_printf(s, "| | ");
|
||||||
|
if (tracer_flags.val & TRACE_GRAPH_PRINT_OVERHEAD) {
|
||||||
|
seq_printf(s, "| ");
|
||||||
|
seq_printf(s, "| | | | |\n");
|
||||||
|
} else
|
||||||
|
seq_printf(s, " | | | | |\n");
|
||||||
|
}
|
||||||
static struct tracer graph_trace __read_mostly = {
|
static struct tracer graph_trace __read_mostly = {
|
||||||
.name = "function_graph",
|
.name = "function_graph",
|
||||||
.init = graph_trace_init,
|
.init = graph_trace_init,
|
||||||
.reset = graph_trace_reset,
|
.reset = graph_trace_reset,
|
||||||
.print_line = print_graph_function,
|
.print_line = print_graph_function,
|
||||||
|
.print_header = print_graph_headers,
|
||||||
.flags = &tracer_flags,
|
.flags = &tracer_flags,
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue