linux/tools/perf/tests
Arnaldo Carvalho de Melo 7e1b659545 perf test vmlinux: Tolerate symbol aliases
The algorithms used to prune aliases in symbols__fixup_duplicate() uses
information available on ELF symtabs that are not present on
/proc/kallsyms, so it picks different aliases as "best" for vmlinux and
kallsyms.

We could probably improve a bit this by having a list of aliases for the
"best" symbols picked, instead of throwing this info, but that is left
for when we find a real need.

With this, 'perf test vmlinux' passes:

  # perf test -F 1
   1: vmlinux symtab matches kallsyms: Ok
  #

When we ask for verbose mode, we can see those warning:

  # perf test -F -v 1
   1: vmlinux symtab matches kallsyms:
  --- start ---
  Looking at the vmlinux_path (8 entries long)
  Using /lib/modules/4.8.0-rc4+/build/vmlinux for symbols
  WARN: 0xffffffffb7001000: diff name v: xen_hypercall_set_trap_table k: hypercall_page
  WARN: 0xffffffffb7077970: diff end addr for aesni_gcm_dec v: 0xffffffffb707a2f2 k: 0xffffffffb7077a02
  WARN: 0xffffffffb707a300: diff end addr for aesni_gcm_enc v: 0xffffffffb707cc03 k: 0xffffffffb707a392
  WARN: 0xffffffffb707f950: diff end addr for aesni_gcm_enc_avx_gen2 v: 0xffffffffb7084ef6 k: 0xffffffffb707f9c3
  WARN: 0xffffffffb7084f00: diff end addr for aesni_gcm_dec_avx_gen2 v: 0xffffffffb708a691 k: 0xffffffffb7084f73
  WARN: 0xffffffffb708aa10: diff end addr for aesni_gcm_enc_avx_gen4 v: 0xffffffffb708f844 k: 0xffffffffb708aa83
  WARN: 0xffffffffb708f850: diff end addr for aesni_gcm_dec_avx_gen4 v: 0xffffffffb709486f k: 0xffffffffb708f8c3
  WARN: 0xffffffffb71a6e50: diff name v: perf_pmu_commit_txn.part.98 k: perf_pmu_cancel_txn.part.97
  WARN: 0xffffffffb752e480: diff name v: wakeup_expire_count_show.part.5 k: wakeup_active_count_show.part.7
  WARN: 0xffffffffb76e8d00: diff name v: phys_switch_id_show.part.11 k: phys_port_name_show.part.12
  WARN: Maps only in vmlinux:
   ffffffffb7d7d000-ffffffffb7eeaac8 117d000 [kernel].init.text
   ffffffffb7eeaac8-ffffffffc03ad000 12eaac8 [kernel].exit.text
  ---- end ----
  vmlinux symtab matches kallsyms: Ok
  #

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/n/tip-6v5w1k8rpx4ggczlkw730vt0@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2016-09-01 12:42:23 -03:00
..
attr
.gitignore
attr.c
attr.py
backward-ring-buffer.c perf tools: Fix typo: "ehough" -> "enough" 2016-08-23 17:06:38 -03:00
bitmap.c perf tests: Add test for bitmap_scnprintf function 2016-08-02 16:33:27 -03:00
bp_signal_overflow.c
bp_signal.c
bpf-script-example.c perf tests bpf: Use SyS_epoll_wait alias 2016-08-03 19:40:48 -03:00
bpf-script-test-kbuild.c
bpf-script-test-prologue.c
bpf-script-test-relocation.c
bpf.c perf test bpf: Fix typo: "ehough" -> "enough" 2016-08-23 17:06:39 -03:00
Build perf tests: Add test for bitmap_scnprintf function 2016-08-02 16:33:27 -03:00
builtin-test.c perf tests: Add test for bitmap_scnprintf function 2016-08-02 16:33:27 -03:00
code-reading.c perf tests: objdump output can contain multi byte chunks 2016-08-02 16:42:51 -03:00
cpumap.c perf tests cpumap: Add missing headers 2016-07-12 15:19:56 -03:00
dso-data.c perf tools: Allow to reset open files counter 2016-06-30 18:27:44 -03:00
dwarf-unwind.c
event_update.c
event-times.c tools: Introduce str_error_r() 2016-07-12 15:19:47 -03:00
evsel-roundtrip-name.c perf evlist: Rename for_each() macros to for_each_entry() 2016-06-23 11:26:15 -03:00
evsel-tp-sched.c
fdarray.c perf test fdarray: Add missing poll.h header 2016-07-12 15:19:56 -03:00
hists_common.c
hists_common.h
hists_cumulate.c perf tests: Fix hist accumulation test 2016-07-04 19:39:01 -03:00
hists_filter.c perf evlist: Rename for_each() macros to for_each_entry() 2016-06-23 11:26:15 -03:00
hists_link.c perf evlist: Rename for_each() macros to for_each_entry() 2016-06-23 11:26:15 -03:00
hists_output.c
is_printable_array.c perf tests: Add is_printable_array test 2016-07-18 19:50:35 -03:00
keep-tracking.c
kmod-path.c perf tests kmod-path: Fix build on ubuntu:16.04-x-armhf 2016-07-22 16:25:44 -03:00
llvm.c perf tools: Remove needless includes from cache.h 2016-07-12 15:19:58 -03:00
llvm.h
make perf build: Add sdt feature detection 2016-07-13 23:09:09 -03:00
mmap-basic.c perf tests: Add missing pthread.h include for CPU_*() macros 2016-07-12 15:19:53 -03:00
mmap-thread-lookup.c
openat-syscall-all-cpus.c perf tests: Add missing pthread.h include for CPU_*() macros 2016-07-12 15:19:53 -03:00
openat-syscall-tp-fields.c perf tests openat-syscall-tp-fields: Add some conditional defines 2016-07-12 15:19:54 -03:00
openat-syscall.c tools: Introduce str_error_r() 2016-07-12 15:19:47 -03:00
parse-events.c perf evlist: Rename for_each() macros to for_each_entry() 2016-06-23 11:26:15 -03:00
parse-no-sample-id-all.c perf evlist: Destructors should accept NULL 2016-06-22 10:01:48 -03:00
perf-record.c perf tests: Add missing pthread.h include for CPU_*() macros 2016-07-12 15:19:53 -03:00
perf-targz-src-pkg
pmu.c
python-use.c
sample-parsing.c
sdt.c perf test: Add a test case for SDT event 2016-07-13 23:09:10 -03:00
stat.c
sw-clock.c tools: Introduce str_error_r() 2016-07-12 15:19:47 -03:00
switch-tracking.c perf evlist: Rename for_each() macros to for_each_entry() 2016-06-23 11:26:15 -03:00
task-exit.c tools: Introduce str_error_r() 2016-07-12 15:19:47 -03:00
tests.h perf tests: Add test for bitmap_scnprintf function 2016-08-02 16:33:27 -03:00
thread-map.c perf tests: Fix thread map test for -F option 2016-06-30 18:27:44 -03:00
thread-mg-share.c
topology.c
vmlinux-kallsyms.c perf test vmlinux: Tolerate symbol aliases 2016-09-01 12:42:23 -03:00