diff options
author | Jiri Olsa <jolsa@redhat.com> | 2010-04-02 13:01:22 -0400 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2010-04-27 12:36:53 -0400 |
commit | 62b915f1060996a8e1f69be50e3b8e9e43b710cb (patch) | |
tree | 26741f065b30b67022d680c3bc2afbda319638e1 /kernel/trace/trace.h | |
parent | d7a8d9e907cc294ec7a4a7046d1886375fbcc82e (diff) |
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.h')
-rw-r--r-- | kernel/trace/trace.h | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h index 970004c5fa79..911e9864e94a 100644 --- a/kernel/trace/trace.h +++ b/kernel/trace/trace.h | |||
@@ -378,6 +378,9 @@ void trace_function(struct trace_array *tr, | |||
378 | unsigned long ip, | 378 | unsigned long ip, |
379 | unsigned long parent_ip, | 379 | unsigned long parent_ip, |
380 | unsigned long flags, int pc); | 380 | unsigned long flags, int pc); |
381 | void trace_default_header(struct seq_file *m); | ||
382 | void print_trace_header(struct seq_file *m, struct trace_iterator *iter); | ||
383 | int trace_empty(struct trace_iterator *iter); | ||
381 | 384 | ||
382 | void trace_graph_return(struct ftrace_graph_ret *trace); | 385 | void trace_graph_return(struct ftrace_graph_ret *trace); |
383 | int trace_graph_entry(struct ftrace_graph_ent *trace); | 386 | int trace_graph_entry(struct ftrace_graph_ent *trace); |
@@ -491,11 +494,29 @@ extern int trace_clock_id; | |||
491 | 494 | ||
492 | /* Standard output formatting function used for function return traces */ | 495 | /* Standard output formatting function used for function return traces */ |
493 | #ifdef CONFIG_FUNCTION_GRAPH_TRACER | 496 | #ifdef CONFIG_FUNCTION_GRAPH_TRACER |
497 | |||
498 | /* Flag options */ | ||
499 | #define TRACE_GRAPH_PRINT_OVERRUN 0x1 | ||
500 | #define TRACE_GRAPH_PRINT_CPU 0x2 | ||
501 | #define TRACE_GRAPH_PRINT_OVERHEAD 0x4 | ||
502 | #define TRACE_GRAPH_PRINT_PROC 0x8 | ||
503 | #define TRACE_GRAPH_PRINT_DURATION 0x10 | ||
504 | #define TRACE_GRAPH_PRINT_ABS_TIME 0x20 | ||
505 | |||
494 | extern enum print_line_t | 506 | extern enum print_line_t |
495 | print_graph_function_flags(struct trace_iterator *iter, u32 flags); | 507 | print_graph_function_flags(struct trace_iterator *iter, u32 flags); |
496 | extern void print_graph_headers_flags(struct seq_file *s, u32 flags); | 508 | extern void print_graph_headers_flags(struct seq_file *s, u32 flags); |
497 | extern enum print_line_t | 509 | extern enum print_line_t |
498 | trace_print_graph_duration(unsigned long long duration, struct trace_seq *s); | 510 | trace_print_graph_duration(unsigned long long duration, struct trace_seq *s); |
511 | extern void graph_trace_open(struct trace_iterator *iter); | ||
512 | extern void graph_trace_close(struct trace_iterator *iter); | ||
513 | extern int __trace_graph_entry(struct trace_array *tr, | ||
514 | struct ftrace_graph_ent *trace, | ||
515 | unsigned long flags, int pc); | ||
516 | extern void __trace_graph_return(struct trace_array *tr, | ||
517 | struct ftrace_graph_ret *trace, | ||
518 | unsigned long flags, int pc); | ||
519 | |||
499 | 520 | ||
500 | #ifdef CONFIG_DYNAMIC_FTRACE | 521 | #ifdef CONFIG_DYNAMIC_FTRACE |
501 | /* TODO: make this variable */ | 522 | /* TODO: make this variable */ |