summaryrefslogtreecommitdiffstats
path: root/tools/perf
diff options
context:
space:
mode:
authorThomas Gleixner <tglx@linutronix.de>2010-12-07 12:48:55 +0000
committerArnaldo Carvalho de Melo <acme@redhat.com>2010-12-09 12:10:53 -0200
commit532e7269c01098f0be6e08113c6947ec6ed11bfa (patch)
tree3707b1041985a928fcb1c53356f0fd9ba18edcf6 /tools/perf
parentf74725dcf2f6931c26bc65e77e34e693eeb8441c (diff)
downloadlinux-stable-532e7269c01098f0be6e08113c6947ec6ed11bfa.tar.gz
linux-stable-532e7269c01098f0be6e08113c6947ec6ed11bfa.tar.bz2
linux-stable-532e7269c01098f0be6e08113c6947ec6ed11bfa.zip
perf session: Move dump code to event delivery path
Preparatory patch for ordered perf report -D Acked-by: Ian Munsie <imunsie@au1.ibm.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Ian Munsie <imunsie@au1.ibm.com> Cc: Ingo Molnar <mingo@elte.hu> Cc: Peter Zijlstra <peterz@infradead.org> LKML-Reference: <20101207124550.918655066@linutronix.de> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Diffstat (limited to 'tools/perf')
-rw-r--r--tools/perf/util/session.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index d43e56cd6f28..7c5cc129207a 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -702,10 +702,13 @@ static int perf_session_deliver_event(struct perf_session *session,
event_t *event,
struct sample_data *sample,
struct perf_event_ops *ops,
- u64 file_offset __used)
+ u64 file_offset)
{
+ dump_event(session, event, file_offset, sample);
+
switch (event->header.type) {
case PERF_RECORD_SAMPLE:
+ dump_sample(session, event, sample);
return ops->sample(event, sample, session);
case PERF_RECORD_MMAP:
return ops->mmap(event, sample, session);
@@ -747,10 +750,8 @@ static int perf_session__process_event(struct perf_session *session,
if (event->header.type >= PERF_RECORD_USER_TYPE_START)
dump_event(session, event, file_offset, NULL);
- else {
+ else
event__parse_sample(event, session, &sample);
- dump_event(session, event, file_offset, &sample);
- }
/* These events are processed right away */
switch (event->header.type) {
@@ -765,7 +766,6 @@ static int perf_session__process_event(struct perf_session *session,
return 0;
}
}
- dump_sample(session, event, &sample);
break;
case PERF_RECORD_HEADER_ATTR: