diff options
author | Arnaldo Carvalho de Melo <acme@redhat.com> | 2015-02-03 10:46:58 -0500 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2015-02-06 05:46:37 -0500 |
commit | aa1aac17a15cbf64236bd6f3b855262dcfb845c9 (patch) | |
tree | 11565e46649734b3f532c1ce1e7ca2ac13af3a90 | |
parent | 402bb4e6ec6507ccbb2e556d7996bbc989db7f27 (diff) |
perf tools: Introduce event_format__fprintf method
The existing one, event_format__print() uses stdout unconditionally,
and 'perf trace' needs to use it to format into a file that may have
been set by the user, i.e. 'trace -o file.output'.
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Borislav Petkov <bp@suse.de>
Cc: David Ahern <dsahern@gmail.com>
Cc: Don Zickus <dzickus@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Mike Galbraith <efault@gmx.de>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Link: http://lkml.kernel.org/n/tip-7l0mgm91hwg0bby00s5pse8r@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r-- | tools/perf/util/trace-event-parse.c | 12 | ||||
-rw-r--r-- | tools/perf/util/trace-event.h | 3 |
2 files changed, 12 insertions, 3 deletions
diff --git a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c index c36636fd825b..25d6c737be3e 100644 --- a/tools/perf/util/trace-event-parse.c +++ b/tools/perf/util/trace-event-parse.c | |||
@@ -112,8 +112,8 @@ unsigned long long read_size(struct event_format *event, void *ptr, int size) | |||
112 | return pevent_read_number(event->pevent, ptr, size); | 112 | return pevent_read_number(event->pevent, ptr, size); |
113 | } | 113 | } |
114 | 114 | ||
115 | void event_format__print(struct event_format *event, | 115 | void event_format__fprintf(struct event_format *event, |
116 | int cpu, void *data, int size) | 116 | int cpu, void *data, int size, FILE *fp) |
117 | { | 117 | { |
118 | struct pevent_record record; | 118 | struct pevent_record record; |
119 | struct trace_seq s; | 119 | struct trace_seq s; |
@@ -125,10 +125,16 @@ void event_format__print(struct event_format *event, | |||
125 | 125 | ||
126 | trace_seq_init(&s); | 126 | trace_seq_init(&s); |
127 | pevent_event_info(&s, event, &record); | 127 | pevent_event_info(&s, event, &record); |
128 | trace_seq_do_printf(&s); | 128 | trace_seq_do_fprintf(&s, fp); |
129 | trace_seq_destroy(&s); | 129 | trace_seq_destroy(&s); |
130 | } | 130 | } |
131 | 131 | ||
132 | void event_format__print(struct event_format *event, | ||
133 | int cpu, void *data, int size) | ||
134 | { | ||
135 | return event_format__fprintf(event, cpu, data, size, stdout); | ||
136 | } | ||
137 | |||
132 | void parse_proc_kallsyms(struct pevent *pevent, | 138 | void parse_proc_kallsyms(struct pevent *pevent, |
133 | char *file, unsigned int size __maybe_unused) | 139 | char *file, unsigned int size __maybe_unused) |
134 | { | 140 | { |
diff --git a/tools/perf/util/trace-event.h b/tools/perf/util/trace-event.h index 52aaa19e1eb1..356629a30ca9 100644 --- a/tools/perf/util/trace-event.h +++ b/tools/perf/util/trace-event.h | |||
@@ -23,6 +23,9 @@ trace_event__tp_format(const char *sys, const char *name); | |||
23 | 23 | ||
24 | int bigendian(void); | 24 | int bigendian(void); |
25 | 25 | ||
26 | void event_format__fprintf(struct event_format *event, | ||
27 | int cpu, void *data, int size, FILE *fp); | ||
28 | |||
26 | void event_format__print(struct event_format *event, | 29 | void event_format__print(struct event_format *event, |
27 | int cpu, void *data, int size); | 30 | int cpu, void *data, int size); |
28 | 31 | ||