From: tip-bot for Thomas Gleixner <tglx@linutronix.de>
To: linux-tip-commits@vger.kernel.org
Cc: acme@redhat.com, linux-kernel@vger.kernel.org, hpa@zytor.com,
mingo@redhat.com, peterz@infradead.org, imunsie@au1.ibm.com,
fweisbec@gmail.com, tglx@linutronix.de, mingo@elte.hu
Subject: [tip:perf/core] perf session: Split out user event processing
Date: Thu, 9 Dec 2010 23:39:34 GMT [thread overview]
Message-ID: <tip-ba74f0640d963ccc914ac533cb0ba133ee07bcf2@git.kernel.org> (raw)
In-Reply-To: <20101207124551.110956235@linutronix.de>
Commit-ID: ba74f0640d963ccc914ac533cb0ba133ee07bcf2
Gitweb: http://git.kernel.org/tip/ba74f0640d963ccc914ac533cb0ba133ee07bcf2
Author: Thomas Gleixner <tglx@linutronix.de>
AuthorDate: Tue, 7 Dec 2010 12:49:01 +0000
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Thu, 9 Dec 2010 12:15:43 -0200
perf session: Split out user event processing
Simplify further.
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: <20101207124551.110956235@linutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/session.c | 42 ++++++++++++++++++++++++------------------
1 files changed, 24 insertions(+), 18 deletions(-)
diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c
index a765b27..69760cd 100644
--- a/tools/perf/util/session.c
+++ b/tools/perf/util/session.c
@@ -748,24 +748,10 @@ static int perf_session__preprocess_sample(struct perf_session *session,
return 0;
}
-static int perf_session__process_event(struct perf_session *session,
- event_t *event,
- struct perf_event_ops *ops,
- u64 file_offset)
+static int perf_session__process_user_event(struct perf_session *session, event_t *event,
+ struct perf_event_ops *ops, u64 file_offset)
{
- struct sample_data sample;
- int ret;
-
- if (session->header.needs_swap && event__swap_ops[event->header.type])
- event__swap_ops[event->header.type](event);
-
- if (event->header.type >= PERF_RECORD_HEADER_MAX)
- return -EINVAL;
-
- hists__inc_nr_events(&session->hists, event->header.type);
-
- if (event->header.type >= PERF_RECORD_USER_TYPE_START)
- dump_event(session, event, file_offset, NULL);
+ dump_event(session, event, file_offset, NULL);
/* These events are processed right away */
switch (event->header.type) {
@@ -782,8 +768,28 @@ static int perf_session__process_event(struct perf_session *session,
case PERF_RECORD_FINISHED_ROUND:
return ops->finished_round(event, session, ops);
default:
- break;
+ return -EINVAL;
}
+}
+
+static int perf_session__process_event(struct perf_session *session,
+ event_t *event,
+ struct perf_event_ops *ops,
+ u64 file_offset)
+{
+ struct sample_data sample;
+ int ret;
+
+ if (session->header.needs_swap && event__swap_ops[event->header.type])
+ event__swap_ops[event->header.type](event);
+
+ if (event->header.type >= PERF_RECORD_HEADER_MAX)
+ return -EINVAL;
+
+ hists__inc_nr_events(&session->hists, event->header.type);
+
+ if (event->header.type >= PERF_RECORD_USER_TYPE_START)
+ return perf_session__process_user_event(session, event, ops, file_offset);
/*
* For all kernel events we get the sample data
next prev parent reply other threads:[~2010-12-09 23:40 UTC|newest]
Thread overview: 31+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-07 12:48 [patch 0/9] perf: Consolidate the event handling and ordering Thomas Gleixner
2010-12-07 12:48 ` [patch 1/9] perf: tools: Prevent unbound event__name array access Thomas Gleixner
2010-12-09 23:37 ` [tip:perf/core] perf event: " tip-bot for Thomas Gleixner
2010-12-07 12:48 ` [patch 2/9] perf: session: Dont queue events w/o timestamps Thomas Gleixner
2010-12-09 23:37 ` [tip:perf/core] perf " tip-bot for Thomas Gleixner
2010-12-07 12:48 ` [patch 3/9] perf: session: Consolidate the dump code Thomas Gleixner
2010-12-09 3:54 ` Ian Munsie
2010-12-09 23:37 ` [tip:perf/core] perf " tip-bot for Thomas Gleixner
2010-12-07 12:48 ` [patch 4/9] perf: session: Store file offset in sample_queue Thomas Gleixner
2010-12-09 3:56 ` Ian Munsie
2010-12-09 23:38 ` [tip:perf/core] perf " tip-bot for Thomas Gleixner
2010-12-07 12:48 ` [patch 5/9] perf: session: Add file_offset to event delivery function Thomas Gleixner
2010-12-09 3:57 ` Ian Munsie
2010-12-09 23:38 ` [tip:perf/core] perf " tip-bot for Thomas Gleixner
2010-12-07 12:48 ` [patch 6/9] perf: session: Move dump code to event delivery path Thomas Gleixner
2010-12-09 3:58 ` Ian Munsie
2010-12-09 23:38 ` [tip:perf/core] perf " tip-bot for Thomas Gleixner
2010-12-07 12:48 ` [patch 7/9] perf: session: Split out sample preprocessing Thomas Gleixner
2010-12-09 23:39 ` [tip:perf/core] perf " tip-bot for Thomas Gleixner
2010-12-07 12:49 ` [patch 8/9] perf: session: Split out user event processing Thomas Gleixner
2010-12-09 23:39 ` tip-bot for Thomas Gleixner [this message]
2010-12-07 12:49 ` [patch 9/9] pref: session: Break event ordering when timestamps are missing Thomas Gleixner
2010-12-09 3:50 ` Ian Munsie
2010-12-09 13:58 ` Thomas Gleixner
2010-12-09 17:32 ` Arnaldo Carvalho de Melo
2010-12-10 3:36 ` Ian Munsie
2010-12-22 11:29 ` [tip:perf/core] perf session: Fallback to unordered processing if no sample_id_all tip-bot for Ian Munsie
2010-12-08 20:24 ` [patch 0/9] perf: Consolidate the event handling and ordering Arnaldo Carvalho de Melo
2010-12-09 5:54 ` Ian Munsie
2010-12-09 5:33 ` [PATCH v4] perf record,report,annotate,diff: Process events in order Ian Munsie
2010-12-22 11:29 ` [tip:perf/core] " tip-bot for Ian Munsie
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=tip-ba74f0640d963ccc914ac533cb0ba133ee07bcf2@git.kernel.org \
--to=tglx@linutronix.de \
--cc=acme@redhat.com \
--cc=fweisbec@gmail.com \
--cc=hpa@zytor.com \
--cc=imunsie@au1.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.