From: tip-bot for Namhyung Kim <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: acme@redhat.com, linux-kernel@vger.kernel.org, paulus@samba.org,
hpa@zytor.com, mingo@kernel.org, a.p.zijlstra@chello.nl,
namhyung.kim@lge.com, namhyung@kernel.org, jolsa@redhat.com,
fweisbec@gmail.com, rostedt@goodmis.org, dsahern@gmail.com,
tglx@linutronix.de
Subject: [tip:perf/core] perf util: Parse header_page to get proper long size
Date: Fri, 19 Jul 2013 00:47:12 -0700 [thread overview]
Message-ID: <tip-94b4d89e0021fe3e10415feede364a3fccaa2f89@git.kernel.org> (raw)
In-Reply-To: <1370323231-14022-12-git-send-email-namhyung@kernel.org>
Commit-ID: 94b4d89e0021fe3e10415feede364a3fccaa2f89
Gitweb: http://git.kernel.org/tip/94b4d89e0021fe3e10415feede364a3fccaa2f89
Author: Namhyung Kim <namhyung.kim@lge.com>
AuthorDate: Tue, 4 Jun 2013 14:20:26 +0900
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Fri, 12 Jul 2013 13:52:24 -0300
perf util: Parse header_page to get proper long size
The header_page file describes the format of the ring buffer page
which is used by ftrace (not perf). And size of "commit" field (I
guess it's older name was 'size') represents the real size of long
type used for kernel. So update the pevent's long size.
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Steven Rostedt <rostedt@goodmis.org>
Link: http://lkml.kernel.org/r/1370323231-14022-12-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/trace-event-read.c | 22 +++++++++++++++++++++-
1 file changed, 21 insertions(+), 1 deletion(-)
diff --git a/tools/perf/util/trace-event-read.c b/tools/perf/util/trace-event-read.c
index fa45fca..f211227 100644
--- a/tools/perf/util/trace-event-read.c
+++ b/tools/perf/util/trace-event-read.c
@@ -212,6 +212,7 @@ static int read_ftrace_printk(struct pevent *pevent)
static int read_header_files(struct pevent *pevent)
{
unsigned long long size;
+ char *header_page;
char buf[BUFSIZ];
int ret = 0;
@@ -224,7 +225,26 @@ static int read_header_files(struct pevent *pevent)
}
size = read8(pevent);
- skip(size);
+
+ header_page = malloc(size);
+ if (header_page == NULL)
+ return -1;
+
+ if (do_read(header_page, size) < 0) {
+ pr_debug("did not read header page");
+ free(header_page);
+ return -1;
+ }
+
+ if (!pevent_parse_header_page(pevent, header_page, size,
+ pevent_get_long_size(pevent))) {
+ /*
+ * The commit field in the page is of type long,
+ * use that instead, since it represents the kernel.
+ */
+ pevent_set_long_size(pevent, pevent->header_page_size_size);
+ }
+ free(header_page);
if (do_read(buf, 13) < 0)
return -1;
next prev parent reply other threads:[~2013-07-19 7:47 UTC|newest]
Thread overview: 41+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-04 5:20 [PATCHSET 00/16] perf tools: Cleanups on tracepoint handling Namhyung Kim
2013-06-04 5:20 ` [PATCH 01/16] tools lib traceevent: Remove unused install targets Namhyung Kim
2013-07-19 7:45 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 02/16] tools lib traceevent: Get rid of unused gui target Namhyung Kim
2013-07-19 7:45 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 03/16] tools lib traceevent: Add const qualifier to string arguments Namhyung Kim
2013-07-19 7:45 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 04/16] tools lib traceevent: Add trace_seq_reset() Namhyung Kim
2013-07-19 7:46 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 05/16] tools lib traceevent: Add page_size field to pevent Namhyung Kim
2013-07-19 7:46 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 06/16] tools lib traceevent: Port kbuffer parser routines Namhyung Kim
2013-07-19 7:46 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 07/16] perf util: Save page size in a trace file to pevent Namhyung Kim
2013-07-19 7:46 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 08/16] perf util: Save long size of traced system Namhyung Kim
2013-07-19 7:46 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 09/16] perf util: Make file/host_bigendian variable local Namhyung Kim
2013-07-19 7:46 ` [tip:perf/core] perf util: Make file/ host_bigendian " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 10/16] perf util: Skip reading header_event file Namhyung Kim
2013-07-19 7:47 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 11/16] perf util: Parse header_page to get proper long size Namhyung Kim
2013-06-06 15:37 ` Jiri Olsa
2013-06-07 8:56 ` Namhyung Kim
2013-06-07 9:01 ` Jiri Olsa
2013-07-19 7:47 ` tip-bot for Namhyung Kim [this message]
2013-06-04 5:20 ` [PATCH 12/16] perf util: Get rid of unused header_page_* variables Namhyung Kim
2013-07-19 7:47 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 13/16] perf util: Move latency_format variable to builtin-script.c Namhyung Kim
2013-07-19 7:47 ` [tip:perf/core] perf script: Adopt latency_format variable tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 14/16] perf util: Rename read_*() functions in trace-event-info.c Namhyung Kim
2013-07-19 7:47 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 15/16] perf util: No need to call read_trace_init() in tracing_data_header() Namhyung Kim
2013-07-19 7:47 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-04 5:20 ` [PATCH 16/16] perf util: Remove unused enum and macro in trace-event.h Namhyung Kim
2013-07-19 7:47 ` [tip:perf/core] " tip-bot for Namhyung Kim
2013-06-24 5:38 ` [PATCHSET 00/16] perf tools: Cleanups on tracepoint handling Namhyung Kim
2013-07-04 8:39 ` Namhyung Kim
2013-07-05 13:16 ` Arnaldo Carvalho de Melo
2013-07-05 13:35 ` Namhyung Kim
2013-07-05 14:57 ` Arnaldo Carvalho de Melo
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-94b4d89e0021fe3e10415feede364a3fccaa2f89@git.kernel.org \
--to=tipbot@zytor.com \
--cc=a.p.zijlstra@chello.nl \
--cc=acme@redhat.com \
--cc=dsahern@gmail.com \
--cc=fweisbec@gmail.com \
--cc=hpa@zytor.com \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tip-commits@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=namhyung.kim@lge.com \
--cc=namhyung@kernel.org \
--cc=paulus@samba.org \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox