]> git.proxmox.com Git - mirror_ubuntu-jammy-kernel.git/commit - tools/perf/builtin-annotate.c
perf symbols: Unify symbol maps
authorArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 26 Apr 2018 19:52:34 +0000 (16:52 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Fri, 27 Apr 2018 13:47:06 +0000 (10:47 -0300)
commit3183f8ca304fd84096c44332f9bb699943beb6f1
treebe40e5bb5eb54f4ce203f606c509d733c81ee8fe
parente9814df8645d82b6c5d185537f9510028e35c385
perf symbols: Unify symbol maps

Remove the split of symbol tables for data (MAP__VARIABLE) and for
functions (MAP__FUNCTION), its unneeded and there were various places
doing two lookups to find a symbol, so simplify this.

We still will consider only the symbols that matched the filters in
place, i.e. see the (elf_(sec,sym)|symbol_type)__filter() routines in
the patch, just so that we consider only the same symbols as before,
to reduce the possibility of regressions.

All the tests on 50-something build environments, in varios versions
of lots of distros and cross build environments were performed without
build regressions, as usual with all pull requests the other tests were
also performed: 'perf test' and 'make -C tools/perf build-test'.

Also this was done at a great granularity so that regressions can be
bisected more easily.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: https://lkml.kernel.org/n/tip-hiq0fy2rsleupnqqwuojo1ne@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
20 files changed:
tools/perf/builtin-annotate.c
tools/perf/builtin-report.c
tools/perf/tests/hists_common.c
tools/perf/ui/browsers/map.c
tools/perf/util/db-export.c
tools/perf/util/dso.c
tools/perf/util/dso.h
tools/perf/util/event.c
tools/perf/util/machine.c
tools/perf/util/machine.h
tools/perf/util/map.c
tools/perf/util/map.h
tools/perf/util/probe-event.c
tools/perf/util/session.c
tools/perf/util/symbol-elf.c
tools/perf/util/symbol-minimal.c
tools/perf/util/symbol.c
tools/perf/util/symbol.h
tools/perf/util/symbol_fprintf.c
tools/perf/util/thread.c