[GIT PULL] perf fixes

From: Ingo Molnar
Date: Sun Dec 01 2019 - 17:15:42 EST


Linus,

Please pull the latest perf-urgent-for-linus git tree from:

git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf-urgent-for-linus

# HEAD: e680a41fcaf07ccac8817c589fc4824988b48eac Merge tag 'perf-core-for-mingo-5.5-20191128' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/urgent

Mostly fixes:


- Make /sys/devices/cpu/rdpmc based RDPMC enforcement more instantaneous

- decoder: Update the Intel opcode map

- Various tooling fixes, including a few late optimizations and cleanups.

Thanks,

Ingo

------------------>
Adrian Hunter (4):
x86/insn: Add some more Intel instructions to the opcode map
x86/insn: perf tools: Add some more instructions to the new instructions test
perf script: Fix brstackinsn for AUXTRACE
perf script: Fix invalid LBR/binary mismatch error

Andi Kleen (2):
perf pmu: Use file system cache to optimize sysfs access
perf affinity: Add infrastructure to save/restore affinity

Anthony Steinhauser (1):
perf/x86: Implement immediate enforcement of /sys/devices/cpu/rdpmc value of 0

Arnaldo Carvalho de Melo (15):
perf script: Move map__fprintf_srccode() to near its only user
perf map: Ditch leftover map__reloc_vmlinux() prototype
perf map: Remove needless struct forward declarations
perf map: Remove unused functions
perf maps: Merge 'struct maps' with 'struct map_groups'
perf thread: Rename thread->mg to thread->maps
perf addr_location: Rename al->mg to al->maps
perf map_symbol: Rename ms->mg to ms->maps
perf maps: Rename 'mg' variables to 'maps'
perf maps: Rename map_groups.h to maps.h
perf tests: Rename thread-mg-share to thread-maps-share
perf tests: Rename tests/map_groups.c to tests/maps.c
perf diff: Use llabs() with 64-bit values
perf diff: Use llabs() with 64-bit values
perf regs: Make perf_reg_name() return "unknown" instead of NULL

Jiri Olsa (1):
perf tools: Allow to link with libbpf dynamicaly


arch/x86/events/core.c | 18 +-
arch/x86/include/asm/mmu_context.h | 4 +-
arch/x86/lib/x86-opcode-map.txt | 44 +-
tools/arch/x86/lib/x86-opcode-map.txt | 44 +-
tools/build/Makefile.feature | 3 +-
tools/build/feature/Makefile | 4 +
tools/build/feature/test-libbpf.c | 7 +
tools/perf/Makefile.config | 10 +
tools/perf/Makefile.perf | 6 +-
tools/perf/arch/arm/tests/dwarf-unwind.c | 4 +-
tools/perf/arch/arm64/tests/dwarf-unwind.c | 4 +-
tools/perf/arch/powerpc/tests/dwarf-unwind.c | 4 +-
tools/perf/arch/s390/annotate/instructions.c | 2 +-
tools/perf/arch/x86/tests/dwarf-unwind.c | 4 +-
tools/perf/arch/x86/tests/insn-x86-dat-32.c | 366 ++++++++++++
tools/perf/arch/x86/tests/insn-x86-dat-64.c | 484 +++++++++++++++
tools/perf/arch/x86/tests/insn-x86-dat-src.c | 655 +++++++++++++++++++++
tools/perf/arch/x86/util/event.c | 5 +-
tools/perf/builtin-diff.c | 6 +-
tools/perf/builtin-report.c | 7 +-
tools/perf/builtin-script.c | 46 +-
tools/perf/tests/Build | 4 +-
tools/perf/tests/builtin-test.c | 8 +-
tools/perf/tests/code-reading.c | 2 +-
tools/perf/tests/{map_groups.c => maps.c} | 26 +-
tools/perf/tests/tests.h | 4 +-
.../{thread-mg-share.c => thread-maps-share.c} | 36 +-
tools/perf/tests/vmlinux-kallsyms.c | 9 +-
tools/perf/ui/browsers/annotate.c | 2 +-
tools/perf/ui/stdio/hist.c | 4 +-
tools/perf/util/Build | 2 +
tools/perf/util/affinity.c | 73 +++
tools/perf/util/affinity.h | 17 +
tools/perf/util/annotate.c | 8 +-
tools/perf/util/bpf-event.c | 4 +-
tools/perf/util/callchain.c | 8 +-
tools/perf/util/cs-etm.c | 2 +-
tools/perf/util/db-export.c | 12 +-
tools/perf/util/event.c | 14 +-
tools/perf/util/fncache.c | 63 ++
tools/perf/util/fncache.h | 7 +
tools/perf/util/hist.c | 8 +-
tools/perf/util/intel-pt.c | 2 +-
tools/perf/util/machine.c | 80 ++-
tools/perf/util/machine.h | 10 +-
tools/perf/util/map.c | 223 ++-----
tools/perf/util/map.h | 14 +-
tools/perf/util/map_groups.h | 106 ----
tools/perf/util/map_symbol.h | 4 +-
tools/perf/util/maps.h | 87 +++
tools/perf/util/perf_regs.h | 2 +-
tools/perf/util/pmu.c | 34 +-
tools/perf/util/probe-event.c | 4 +-
tools/perf/util/python-ext-sources | 1 +
.../util/scripting-engines/trace-event-python.c | 2 +-
tools/perf/util/srccode.c | 9 +-
tools/perf/util/symbol-elf.c | 16 +-
tools/perf/util/symbol.c | 91 ++-
tools/perf/util/symbol.h | 6 +-
tools/perf/util/synthetic-events.c | 2 +-
tools/perf/util/thread-stack.c | 4 +-
tools/perf/util/thread.c | 38 +-
tools/perf/util/thread.h | 4 +-
tools/perf/util/unwind-libdw.c | 4 +-
tools/perf/util/unwind-libunwind-local.c | 22 +-
tools/perf/util/unwind-libunwind.c | 36 +-
tools/perf/util/unwind.h | 27 +-
tools/perf/util/vdso.c | 2 +-
68 files changed, 2245 insertions(+), 625 deletions(-)
create mode 100644 tools/build/feature/test-libbpf.c
rename tools/perf/tests/{map_groups.c => maps.c} (83%)
rename tools/perf/tests/{thread-mg-share.c => thread-maps-share.c} (64%)
create mode 100644 tools/perf/util/affinity.c
create mode 100644 tools/perf/util/affinity.h
create mode 100644 tools/perf/util/fncache.c
create mode 100644 tools/perf/util/fncache.h
delete mode 100644 tools/perf/util/map_groups.h
create mode 100644 tools/perf/util/maps.h