[GIT PULL 00/19] perf/core improvements and fixes
From: Arnaldo Carvalho de Melo
Date: Thu Apr 07 2016 - 16:59:17 EST
Hi Ingo,
Please consider pulling, build tested on:
# perf stat -e cycles dm
alldeps-ubuntu-12.04: Ok
minimal-debian-experimental-x-mips64: Ok
minimal-debian-experimental-x-mips64el: Ok
minimal-debian-experimental-x-mipsel: Ok
minimal-ubuntu-x-arm: Ok
minimal-ubuntu-x-arm64: Ok
minimal-ubuntu-x-ppc64: Ok
minimal-ubuntu-x-ppc64el: Ok
alldeps-debian: Ok
alldeps-mageia: Ok
alldeps-rhel7: Ok
alldeps-centos: Ok
alldeps-opensuse: Ok
alldeps-ubuntu: Ok
Performance counter stats for 'dm':
3,095,685,547 cycles
454.805537820 seconds time elapsed
#
'perf test' passes on fedora23 x86_64,
Thanks,
- Arnaldo
The following changes since commit dad38ca64a252144b4ccdfe9730a3fe2b7c61957:
Merge tag 'perf-core-for-mingo-20160401' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core (2016-04-06 08:46:23 +0200)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git tags/perf-core-for-mingo-20160407
for you to fetch changes up to 98c3d844cd0bc56d33800114e6b6adcd0a5ec381:
perf symbols: Adjust symbol for shared objects (2016-04-07 17:17:01 -0300)
----------------------------------------------------------------
perf/core improvements and fixes:
User visible:
- Beautify more syscall arguments in 'perf trace', using the type column in
tracepoint /format fields to attach, for instance, a pid_t resolver to the
thread COMM, also attach a mode_t beautifier in the same fashion
(Arnaldo Carvalho de Melo)
- Build the syscall table id <-> name resolver using the same .tbl file
used in the kernel to generate headers, to avoid the delay in getting
new syscalls supported in the audit-libs external dependency, done so
far only for x86_64 (Arnaldo Carvalho de Melo)
- Improve the documentation of event specifications (Andi Kleen)
- Process update events in 'perf script', fixing up this use case:
# perf stat -a -I 1000 -e cycles record | perf script -s script.py
- Shared object symbol adjustment fixes, fixing symbol resolution in
Android (Wang Nan)
Infrastructure:
- Add dedicated unwind addr_space member into thread struct, to allow
tools to use thread->priv, noticed while working on having callchains
in 'perf trace' (Jiri Olsa)
Build fixes:
- Fix the build in Ubuntu 12.04 (Arnaldo Carvalho de Melo, Vinson Lee)
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
----------------------------------------------------------------
Andi Kleen (1):
perf list: Document event specifications better
Arnaldo Carvalho de Melo (11):
perf probe: Check if dwarf_getlocations() is available
perf script perl: Do error checking on new backtrace routine
perf trace: Beautify sched_setscheduler 'policy' argument
perf trace: Beautify wait4/waitid 'options' argument
perf trace: Infrastructure to show COMM strings for syscalls returning PIDs
perf trace: Beautify set_tid_address, getpid, getppid return values
perf trace: Beautify pid_t arguments
perf trace: Beautify mode_t arguments
perf trace: Move syscall table id <-> name routines to separate class
perf tools: Allow generating per-arch syscall table arrays
perf tools: Build syscall table .c header from kernel's syscall_64.tbl
Jiri Olsa (4):
perf tools: Remove superfluous ARCH Makefile includes
perf tools: Introduce trim function
perf tools: Add dedicated unwind addr_space member into thread struct
perf script: Process event update events
Vinson Lee (1):
perf config: Fix build with older toolchain.
Wang Nan (2):
perf symbols: Record text offset in dso to calculate objdump address
perf symbols: Adjust symbol for shared objects
tools/build/Makefile.feature | 2 +
tools/build/feature/Makefile | 4 +
tools/build/feature/test-all.c | 5 +
tools/build/feature/test-dwarf_getlocations.c | 12 +
tools/perf/Documentation/perf-list.txt | 107 +++++-
tools/perf/Makefile.perf | 13 +-
tools/perf/arch/x86/Makefile | 23 ++
tools/perf/arch/x86/entry/syscalls/syscall_64.tbl | 374 +++++++++++++++++++++
tools/perf/arch/x86/entry/syscalls/syscalltbl.sh | 39 +++
tools/perf/builtin-script.c | 1 +
tools/perf/builtin-trace.c | 156 +++++----
tools/perf/config/Makefile | 11 +-
tools/perf/trace/beauty/mode_t.c | 68 ++++
tools/perf/trace/beauty/pid.c | 18 +
tools/perf/trace/beauty/sched_policy.c | 44 +++
tools/perf/trace/beauty/waitid_options.c | 26 ++
tools/perf/ui/browsers/hists.c | 3 +-
tools/perf/ui/stdio/hist.c | 3 +-
tools/perf/util/Build | 5 +
tools/perf/util/config.c | 6 +-
tools/perf/util/dwarf-aux.c | 9 +
tools/perf/util/map.c | 14 +
.../perf/util/scripting-engines/trace-event-perl.c | 30 +-
tools/perf/util/symbol-elf.c | 13 +-
tools/perf/util/syscalltbl.c | 134 ++++++++
tools/perf/util/syscalltbl.h | 20 ++
tools/perf/util/thread.h | 6 +
tools/perf/util/unwind-libunwind.c | 25 +-
tools/perf/util/util.h | 5 +
29 files changed, 1060 insertions(+), 116 deletions(-)
create mode 100644 tools/build/feature/test-dwarf_getlocations.c
create mode 100644 tools/perf/arch/x86/entry/syscalls/syscall_64.tbl
create mode 100755 tools/perf/arch/x86/entry/syscalls/syscalltbl.sh
create mode 100644 tools/perf/trace/beauty/mode_t.c
create mode 100644 tools/perf/trace/beauty/pid.c
create mode 100644 tools/perf/trace/beauty/sched_policy.c
create mode 100644 tools/perf/trace/beauty/waitid_options.c
create mode 100644 tools/perf/util/syscalltbl.c
create mode 100644 tools/perf/util/syscalltbl.h