diff options
author | Ingo Molnar <mingo@kernel.org> | 2014-02-22 17:26:24 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2014-02-22 17:26:24 +0100 |
commit | 7e74efcf76c16f851df5c838c143c4a1865ea9fa (patch) | |
tree | 71aba57213c2f5c5a47fd1ab93d4fea100f68008 /tools/perf/util/session.c | |
parent | e9d9768824a18212712ae3afbebd5bfef05176f4 (diff) | |
parent | a15ad2f5360c821f030c53266ebf467738249c68 (diff) |
Merge tag 'perf-core-for-mingo' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core
Pull perf/core improvements and fixes from Arnaldo Carvalho de Melo:
User Visible:
* Allow setting preferred callchain method in .perfconfig (Jiri Olsa)
* Show in what binaries/modules 'perf probe's are set (Masami Hiramatsu)
* Support distro-style debuginfo for uprobe in 'perf probe' (Masami Hiramatsu)
Developer stuff:
* Move some hashing and fs related code from tools/perf/util/
to tools/lib/ so that it can be used by more tools/ living
utilities (Borislav Petkov)
* Prepare DWARF unwinding code for using an elfutils alternative
unwinding library (Jiri Olsa)
* Fix DWARF unwind max_stack processing (Jiri Olsa)
* Add dwarf unwind 'perf test' entry (Jiri Olsa)
* 'perf probe' improvements including memory leak fixes,
sharing the intlist class with other tools, uprobes/kprobes
code sharing and use of ref_reloc_sym (Masami Hiramatsu)
* Shorten sample symbol resolving by adding cpumode to
struct addr_location (Arnaldo Carvalho de Melo)
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/util/session.c')
-rw-r--r-- | tools/perf/util/session.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/tools/perf/util/session.c b/tools/perf/util/session.c index 0b39a48e5110..1d555d652f58 100644 --- a/tools/perf/util/session.c +++ b/tools/perf/util/session.c @@ -702,11 +702,12 @@ static void regs_dump__printf(u64 mask, u64 *regs) } } -static void regs_user__printf(struct perf_sample *sample, u64 mask) +static void regs_user__printf(struct perf_sample *sample) { struct regs_dump *user_regs = &sample->user_regs; if (user_regs->regs) { + u64 mask = user_regs->mask; printf("... user regs: mask 0x%" PRIx64 "\n", mask); regs_dump__printf(mask, user_regs->regs); } @@ -806,7 +807,7 @@ static void dump_sample(struct perf_evsel *evsel, union perf_event *event, branch_stack__printf(sample); if (sample_type & PERF_SAMPLE_REGS_USER) - regs_user__printf(sample, evsel->attr.sample_regs_user); + regs_user__printf(sample); if (sample_type & PERF_SAMPLE_STACK_USER) stack_user__printf(&sample->user_stack); @@ -1008,6 +1009,12 @@ static int perf_session__process_user_event(struct perf_session *session, union if (err == 0) perf_session__set_id_hdr_size(session); return err; + case PERF_RECORD_HEADER_EVENT_TYPE: + /* + * Depreceated, but we need to handle it for sake + * of old data files create in pipe mode. + */ + return 0; case PERF_RECORD_HEADER_TRACING_DATA: /* setup for reading amidst mmap */ lseek(fd, file_offset, SEEK_SET); |