Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1191436
| From | Arnaldo Carvalho de Melo <acme@kernel.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | [PATCH 12/18] perf tools: Stop reading the kallsyms data from perf.data |
| Date | 2015-07-24 04:10 +0200 |
| Message-ID | <pPAAW-8ws-5@gated-at.bofh.it> (permalink) |
| References | <pPArf-85G-3@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
From: Arnaldo Carvalho de Melo <acme@redhat.com>
As it is not used anymore, since 'perf script' switched to asking
libtraceevent to use tools/perf's symbol resolution routines.
Acked-by: David Ahern <dsahern@gmail.com>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Borislav Petkov <bp@suse.de>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Link: http://lkml.kernel.org/n/tip-4ilhofz4b7o8yokvutjt9yzz@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/trace-event-parse.c | 30 ------------------------------
tools/perf/util/trace-event-read.c | 28 +++++++++++++---------------
2 files changed, 13 insertions(+), 45 deletions(-)
diff --git a/tools/perf/util/trace-event-parse.c b/tools/perf/util/trace-event-parse.c
index d4957418657e..8ff7d620d942 100644
--- a/tools/perf/util/trace-event-parse.c
+++ b/tools/perf/util/trace-event-parse.c
@@ -135,36 +135,6 @@ void event_format__print(struct event_format *event,
return event_format__fprintf(event, cpu, data, size, stdout);
}
-void parse_proc_kallsyms(struct pevent *pevent,
- char *file, unsigned int size __maybe_unused)
-{
- unsigned long long addr;
- char *func;
- char *line;
- char *next = NULL;
- char *addr_str;
- char *mod;
- char *fmt = NULL;
-
- line = strtok_r(file, "\n", &next);
- while (line) {
- mod = NULL;
- addr_str = strtok_r(line, " ", &fmt);
- addr = strtoull(addr_str, NULL, 16);
- /* skip character */
- strtok_r(NULL, " ", &fmt);
- func = strtok_r(NULL, "\t", &fmt);
- mod = strtok_r(NULL, "]", &fmt);
- /* truncate the extra '[' */
- if (mod)
- mod = mod + 1;
-
- pevent_register_function(pevent, func, addr, mod);
-
- line = strtok_r(NULL, "\n", &next);
- }
-}
-
void parse_ftrace_printk(struct pevent *pevent,
char *file, unsigned int size __maybe_unused)
{
diff --git a/tools/perf/util/trace-event-read.c b/tools/perf/util/trace-event-read.c
index 54d9e9b548a8..b67a0ccf5ab9 100644
--- a/tools/perf/util/trace-event-read.c
+++ b/tools/perf/util/trace-event-read.c
@@ -162,25 +162,23 @@ out:
static int read_proc_kallsyms(struct pevent *pevent)
{
unsigned int size;
- char *buf;
size = read4(pevent);
if (!size)
return 0;
-
- buf = malloc(size + 1);
- if (buf == NULL)
- return -1;
-
- if (do_read(buf, size) < 0) {
- free(buf);
- return -1;
- }
- buf[size] = '\0';
-
- parse_proc_kallsyms(pevent, buf, size);
-
- free(buf);
+ /*
+ * Just skip it, now that we configure libtraceevent to use the
+ * tools/perf/ symbol resolver.
+ *
+ * We need to skip it so that we can continue parsing old perf.data
+ * files, that contains this /proc/kallsyms payload.
+ *
+ * Newer perf.data files will have just the 4-bytes zeros "kallsyms
+ * payload", so that older tools can continue reading it and interpret
+ * it as "no kallsyms payload is present".
+ */
+ lseek(input_fd, size, SEEK_CUR);
+ trace_data_size += size;
return 0;
}
--
2.1.0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[GIT PULL 00/18] perf/core improvements and fixes Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:00 +0200
[PATCH 01/18] perf test: Check for refcnt in thread_map test Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:00 +0200
[PATCH 06/18] perf symbols: Add front end cache for DSO symbol lookup Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 12/18] perf tools: Stop reading the kallsyms data from perf.data Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 11/18] perf script: Switch from perf.data's kallsyms to perf's symbol resolver Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
Re: [PATCH 11/18] perf script: Switch from perf.data's kallsyms to perf's symbol resolver Jiri Olsa <jolsa@redhat.com> - 2015-08-03 19:50 +0200
Re: [PATCH 11/18] perf script: Switch from perf.data's kallsyms to perf's symbol resolver Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-08-03 21:10 +0200
Re: [PATCH 11/18] perf script: Switch from perf.data's kallsyms to perf's symbol resolver Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-08-03 21:30 +0200
Re: [PATCH 11/18] perf script: Switch from perf.data's kallsyms to perf's symbol resolver Jiri Olsa <jolsa@redhat.com> - 2015-08-03 22:20 +0200
[PATCH 03/18] perf evlist: Use bool instead of target argument in propagate_maps() Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 18/18] perf script: Add option --show-switch-events Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 16/18] perf record: Add option --switch-events to select PERF_RECORD_SWITCH events Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 07/18] perf symbols: Introduce map__is_(kernel,kmodule)() Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 08/18] tools lib traceevent: Allow setting an alternative symbol resolver Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 13/18] perf tools: Stop copying kallsyms into the perf.data file header Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 15/18] perf tools: Add new PERF_RECORD_SWITCH event Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 17/18] perf script: Don't assume evsel position of tracking events Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 09/18] perf symbols: Provide libtraceevent callback to resolve kernel symbols Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 14/18] perf: Add PERF_RECORD_SWITCH to indicate context switches Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
[PATCH 05/18] perf header: Use argv style storage for cmdline feature data Arnaldo Carvalho de Melo <acme@kernel.org> - 2015-07-24 04:10 +0200
csiph-web