diff options
author | Ingo Molnar <mingo@kernel.org> | 2019-11-15 08:33:54 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2019-11-15 08:33:54 +0100 |
commit | b0aeb45bad84aa3e502b660789dd454d1d11fbf9 (patch) | |
tree | 8bce71513b5884d0d8fbfc7cafe888505ee413d8 /tools/perf/builtin-annotate.c | |
parent | 295c52ee1485e4dee660fc1a0e6ceed6c803c9d3 (diff) | |
parent | e1e9b78d3957a267346a86c8f2c433f6a332af65 (diff) |
Merge tag 'perf-core-for-mingo-5.5-20191112' 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:
perf record:
Ravi Bangoria:
- Provide an option to print perf_event_open args and syscall return value.
This was already possible using -v, but then lots of other debug info
would be output as well, provide a way to show just the syscall args
and return value, e.g.:
# perf --debug perf-event-open=1 record
perf_event_attr:
size 112
{ sample_period, sample_freq } 4000
sample_type IP|TID|TIME|PERIOD
read_format ID
disabled 1
inherit 1
<SNIP>
ksymbol 1
bpf_event 1
------------------------------------------------------------
sys_perf_event_open: pid 4308 cpu 0 group_fd -1 flags 0x8 = 4
core:
- Remove map->groups, we can get that information in other ways, reduces
the size of a key data structure and paves the way to have it shared
by multiple threads.
- Use 'struct map_symbol' in more places, where we already were using a
'struct map' + 'struct symbol', this helps passing that usual pair of
information across callchain, browser code, etc.
- Add 'struct map_groups' (where the map_symbol->map is) to 'struct map_symbol',
to ease annotation code, for instance, where we call from functions in one map
we're browsing to functions in another DSO, mapped in another 'struct map'.
event parsing:
Ian Rogers:
- Use YYABORT to clear stack after failure, plugging leaks
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'tools/perf/builtin-annotate.c')
-rw-r--r-- | tools/perf/builtin-annotate.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/tools/perf/builtin-annotate.c b/tools/perf/builtin-annotate.c index 6ab0cc45b287..5898662bc8fb 100644 --- a/tools/perf/builtin-annotate.c +++ b/tools/perf/builtin-annotate.c @@ -83,7 +83,7 @@ static void process_basic_block(struct addr_map_symbol *start, struct addr_map_symbol *end, struct branch_flags *flags) { - struct symbol *sym = start->sym; + struct symbol *sym = start->ms.sym; struct annotation *notes = sym ? symbol__annotation(sym) : NULL; struct block_range_iter iter; struct block_range *entry; @@ -301,9 +301,9 @@ static int hist_entry__tty_annotate(struct hist_entry *he, struct perf_annotate *ann) { if (!ann->use_stdio2) - return symbol__tty_annotate(he->ms.sym, he->ms.map, evsel, &ann->opts); + return symbol__tty_annotate(&he->ms, evsel, &ann->opts); - return symbol__tty_annotate2(he->ms.sym, he->ms.map, evsel, &ann->opts); + return symbol__tty_annotate2(&he->ms, evsel, &ann->opts); } static void hists__find_annotations(struct hists *hists, |