linux_dsm_epyc7002/tools/perf/util
Namhyung Kim 00dc865798 perf record: Do not save pathname in ./debug/.build-id directory for vmlinux
When perf record finishes a session, it pre-processes samples in order
to write build-id info from DSOs that had samples.

During this process it'll call map__load() for the kernel map, and it
ends up calling dso__load_vmlinux_path() which replaces dso->long_name.

But this function checks kernel's build-id before searching vmlinux path
so it'll end up with a cryptic name, the pathname for the entry in the
~/.debug cache, which can be confusing to users.

This patch adds a flag to skip the build-id check during record, so
that it'll have the original vmlinux path for the kernel dso->long_name,
not the entry in the ~/.debug cache.

Before:
  # perf record -va sleep 3
  mmap size 528384B
  [ perf record: Woken up 1 times to write data ]
  [ perf record: Captured and wrote 0.196 MB perf.data (~8545 samples) ]
  Looking at the vmlinux_path (7 entries long)
  Using /home/namhyung/.debug/.build-id/f0/6e17aa50adf4d00b88925e03775de107611551 for symbols

After:
  # perf record -va sleep 3
  mmap size 528384B
  [ perf record: Woken up 1 times to write data ]
  [ perf record: Captured and wrote 0.193 MB perf.data (~8432 samples) ]
  Looking at the vmlinux_path (7 entries long)
  Using /lib/modules/3.16.4-1-ARCH/build/vmlinux for symbols

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: Namhyung Kim <namhyung.kim@lge.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/r/1415063674-17206-7-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
2014-11-05 10:14:08 -03:00
..
include Revert "perf tools: Default to cpu// for events v5" 2014-10-15 16:04:33 -03:00
scripting-engines perf tools: Defer export of comms that were not 'set' 2014-11-03 18:11:59 -03:00
abspath.c
alias.c
annotate.c perf symbols: Make sym->end be the first address after the symbol range 2014-10-14 17:50:58 -03:00
annotate.h
bitmap.c
build-id.c perf build-id: Move build-id related functions to util/build-id.c 2014-11-05 10:14:07 -03:00
build-id.h perf build-id: Move build-id related functions to util/build-id.c 2014-11-05 10:14:07 -03:00
cache.h
callchain.c perf thread: Adopt resolve_callchain method from machine 2014-10-29 10:32:46 -02:00
callchain.h perf tools: A thread's machine can be found via thread->mg->machine 2014-10-29 10:32:46 -02:00
cgroup.c
cgroup.h
cloexec.c
cloexec.h
color.c
color.h
comm.c
comm.h perf tools: Add facility to export data in database-friendly way 2014-10-29 10:32:49 -02:00
config.c
cpumap.c
cpumap.h
ctype.c
data.c
data.h
db-export.c perf tools: Defer export of comms that were not 'set' 2014-11-03 18:11:59 -03:00
db-export.h perf tools: Defer export of comms that were not 'set' 2014-11-03 18:11:59 -03:00
debug.c
debug.h
dso.c perf tools: Add gzip decompression support for kernel module 2014-11-05 10:11:26 -03:00
dso.h perf symbols: Preparation for compressed kernel module support 2014-11-04 10:15:53 -03:00
dwarf-aux.c
dwarf-aux.h
environment.c
event.c perf tools: Add id index 2014-10-29 11:24:47 -02:00
event.h perf tools: Add a thread stack for synthesizing call chains 2014-11-03 17:10:59 -03:00
evlist.c perf tools: Use evlist__for_each in a few remaining places 2014-10-29 11:31:54 -02:00
evlist.h perf evlist: Add missing 'struct option' forward declaration 2014-10-17 12:16:00 -03:00
evsel.c perf evsel: No need to drag util/cgroup.h 2014-10-17 12:17:40 -03:00
evsel.h perf tools: Add id index 2014-10-29 11:24:47 -02:00
exec_cmd.c
exec_cmd.h
find-vdso-map.c perf tools: Build programs to copy 32-bit compatibility 2014-10-29 10:32:48 -02:00
generate-cmdlist.sh
header.c perf build-id: Move build-id related functions to util/build-id.c 2014-11-05 10:14:07 -03:00
header.h perf build-id: Move build-id related functions to util/build-id.c 2014-11-05 10:14:07 -03:00
help.c
help.h
hist.c
hist.h
hweight.c
intlist.c
intlist.h
kvm-stat.h
levenshtein.c
levenshtein.h
machine.c perf symbols: Preparation for compressed kernel module support 2014-11-04 10:15:53 -03:00
machine.h perf tools: Add facility to export data in database-friendly way 2014-10-29 10:32:49 -02:00
map.c perf tools: Set thread->mg.machine in all places 2014-10-29 10:32:46 -02:00
map.h perf tools: Set thread->mg.machine in all places 2014-10-29 10:32:46 -02:00
ordered-events.c perf session: Add option to copy events when queueing 2014-10-15 17:39:03 -03:00
ordered-events.h perf session: Add option to copy events when queueing 2014-10-15 17:39:03 -03:00
pager.c
parse-events.c perf tools: Parse the pmu event prefix and suffix 2014-10-15 16:05:01 -03:00
parse-events.h perf tools: Parse the pmu event prefix and suffix 2014-10-15 16:05:01 -03:00
parse-events.l perf tools: Add support to new style format of kernel PMU event 2014-10-15 16:05:45 -03:00
parse-events.y perf tools: Add support to new style format of kernel PMU event 2014-10-15 16:05:45 -03:00
parse-options.c perf tools: Add support for exclusive option 2014-10-29 10:32:47 -02:00
parse-options.h perf tools: Add support for exclusive option 2014-10-29 10:32:47 -02:00
path.c
perf_regs.c
perf_regs.h
PERF-VERSION-GEN
pmu.c perf pmu: Add proper error handling to print_pmu_events() 2014-10-29 10:32:48 -02:00
pmu.h perf pmu: Let pmu's with no events show up on perf list 2014-10-29 10:32:48 -02:00
pmu.l
pmu.y
probe-event.c perf probe: Add --quiet option to suppress output result message 2014-10-29 10:32:49 -02:00
probe-event.h
probe-finder.c
probe-finder.h
pstack.c
pstack.h
python-ext-sources
python.c
quote.c
quote.h
rblist.c
rblist.h
record.c
run-command.c
run-command.h
session.c perf session: Add perf_session__deliver_synth_event() 2014-10-29 11:36:15 -02:00
session.h perf session: Add perf_session__deliver_synth_event() 2014-10-29 11:36:15 -02:00
setup.py
sigchain.c
sigchain.h
sort.c perf tools: Fix report -F dso_from for data without branch info 2014-10-29 10:29:05 -02:00
sort.h
srcline.c
stat.c
stat.h
strbuf.c
strbuf.h
strfilter.c
strfilter.h
string.c Revert "perf tools: Default to cpu// for events v5" 2014-10-15 16:04:33 -03:00
strlist.c
strlist.h
svghelper.c
svghelper.h
symbol-elf.c perf symbols: Preparation for compressed kernel module support 2014-11-04 10:15:53 -03:00
symbol-minimal.c
symbol.c perf record: Do not save pathname in ./debug/.build-id directory for vmlinux 2014-11-05 10:14:08 -03:00
symbol.h perf record: Do not save pathname in ./debug/.build-id directory for vmlinux 2014-11-05 10:14:08 -03:00
target.c
target.h
thread_map.c perf thread_map: Create dummy constructor out of open coded equivalent 2014-10-14 17:32:52 -03:00
thread_map.h perf thread_map: Create dummy constructor out of open coded equivalent 2014-10-14 17:32:52 -03:00
thread-stack.c perf tools: Enhance the thread stack to output call/return data 2014-11-03 17:43:56 -03:00
thread-stack.h perf tools: Enhance the thread stack to output call/return data 2014-11-03 17:43:56 -03:00
thread.c perf tools: Add a thread stack for synthesizing call chains 2014-11-03 17:10:59 -03:00
thread.h perf tools: Add a thread stack for synthesizing call chains 2014-11-03 17:10:59 -03:00
tool.h perf tools: Add id index 2014-10-29 11:24:47 -02:00
top.c
top.h
trace-event-info.c
trace-event-parse.c
trace-event-read.c
trace-event-scripting.c
trace-event.c
trace-event.h
tsc.c
tsc.h
unwind-libdw.c perf callchains: Use thread->mg->machine 2014-10-29 10:32:46 -02:00
unwind-libdw.h
unwind-libunwind.c perf callchains: Use thread->mg->machine 2014-10-29 10:32:46 -02:00
unwind.h perf callchains: Use thread->mg->machine 2014-10-29 10:32:46 -02:00
usage.c
util.c
util.h perf tools: Add gzip decompression support for kernel module 2014-11-05 10:11:26 -03:00
values.c
values.h
vdso.c perf tools: Do not attempt to run perf-read-vdso32 if it wasn't built 2014-10-29 10:32:48 -02:00
vdso.h perf tools: Add support for 32-bit compatibility VDSOs 2014-10-29 10:32:48 -02:00
wrapper.c
xyarray.c
xyarray.h
zlib.c perf tools: Add gzip decompression support for kernel module 2014-11-05 10:11:26 -03:00