Re: [GIT PULL 00/11] perf/core improvements and fixes
From: Ingo Molnar
Date: Wed Apr 13 2016 - 14:29:04 EST
* Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:
> Hi Ingo,
>
> Please consider pulling,
>
> - Arnaldo
>
> The following changes since commit 31d50c551e30923b86a1b5b420920dd1927fa63b:
>
> perf/x86/amd/uncore: Do not register a task ctx for uncore PMUs (2016-04-13 11:56:36 +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-20160413
>
> for you to fetch changes up to 59247e33ff494e3643cdff54b64bf72575052b76:
>
> perf trace: Do not accept --no-syscalls together with -e (2016-04-13 10:11:52 -0300)
>
> ----------------------------------------------------------------
> perf/core improvements and fixes:
>
> User visible:
>
> - Print callchains asked for events requested via 'perf trace --event' too:
> (Arnaldo Carvalho de Melo)
>
> # trace -e nanosleep --call dwarf --event sched:sched_switch/call-graph=fp/ usleep 1
> 0.346 (0.005 ms): usleep/24428 nanosleep(rqtp: 0x7fffa15a0540) ...
> 0.346 ( ): sched:sched_switch:usleep:24428 [120] S ==> swapper/3:0 [120])
> __schedule+0xfe200402 ([kernel.kallsyms])
> schedule+0xfe200035 ([kernel.kallsyms])
> do_nanosleep+0xfe20006f ([kernel.kallsyms])
> hrtimer_nanosleep+0xfe2000dc ([kernel.kallsyms])
> sys_nanosleep+0xfe20007a ([kernel.kallsyms])
> do_syscall_64+0xfe200062 ([kernel.kallsyms])
> return_from_SYSCALL_64+0xfe200000 ([kernel.kallsyms])
> __nanosleep+0xffff005b8d602010 (/usr/lib64/libc-2.22.so)
> 0.400 (0.059 ms): usleep/24428 ... [continued]: nanosleep()) = 0
> __nanosleep+0x10 (/usr/lib64/libc-2.22.so)
> usleep+0x34 (/usr/lib64/libc-2.22.so)
> main+0x1eb (/usr/bin/usleep)
> __libc_start_main+0xf0 (/usr/lib64/libc-2.22.so)
> _start+0x29 (/usr/bin/usleep)
>
> - Allow requesting that some CPUs or PIDs be highlighted in 'perf sched map' (Jiri Olsa)
>
> - Compact 'perf sched map' to show just CPUs with activity, improving the output
> in high core count systems (Jiri Olsa)
>
> - Fix segfault with 'perf trace --no-syscalls -e syscall-names' by bailing out
> such request, doesn't make sense to ask for no syscalls and then specify which
> ones should be printed (Arnaldo Carvalho de Melo)
>
> Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
>
> ----------------------------------------------------------------
> Arnaldo Carvalho de Melo (3):
> perf trace: Support callchains for --event too
> perf evsel: Move some methods from session.[ch] to evsel.[ch]
> perf trace: Do not accept --no-syscalls together with -e
>
> Jiri Olsa (8):
> perf thread_map: Add has() method
> perf cpu_map: Add has() method
> perf sched: Add compact display option
> perf sched: Use color_fprintf for output
> perf thread_map: Make new_by_tid_str constructor public
> perf sched map: Color given pids
> perf sched map: Color given cpus
> perf sched map: Display only given cpus
>
> tools/perf/Documentation/perf-sched.txt | 16 +++
> tools/perf/builtin-sched.c | 198 ++++++++++++++++++++++++++++++--
> tools/perf/builtin-script.c | 14 +--
> tools/perf/builtin-trace.c | 48 +++++---
> tools/perf/util/cpumap.c | 12 ++
> tools/perf/util/cpumap.h | 2 +
> tools/perf/util/evsel.c | 131 +++++++++++++++++++++
> tools/perf/util/evsel.h | 13 +++
> tools/perf/util/session.c | 130 ---------------------
> tools/perf/util/session.h | 13 ---
> tools/perf/util/thread_map.c | 14 ++-
> tools/perf/util/thread_map.h | 3 +
> 12 files changed, 416 insertions(+), 178 deletions(-)
Pulled, thanks a lot Arnaldo!
Ingo