* Arnaldo Carvalho de Melo acme@kernel.org wrote:
Hi Ingo,
Please consider pulling,
- Arnaldo
The following changes since commit c2365b9388e8ec19305e3f449c1826e7493d156d:
perf/x86/intel/uncore: Do not use macro DEFINE_PCI_DEVICE_TABLE() (2015-10-01 10:53:03 +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
for you to fetch changes up to 19afd10410957b1c808c2c49a88e6dd8b23aa894:
perf stat: Reduce min --interval-print to 10ms (2015-10-02 17:07:55 -0300)
perf/core improvements and fixes:
User visible:
Do event name substring search as last resort in 'perf list'. (Arnaldo Carvalho de Melo)
E.g.:
# perf list clock
List of pre-defined events (to be used in -e):
cpu-clock [Software event] task-clock [Software event]
uncore_cbox_0/clockticks/ [Kernel PMU event] uncore_cbox_1/clockticks/ [Kernel PMU event]
kvm:kvm_pvclock_update [Tracepoint event] kvm:kvm_update_master_clock [Tracepoint event] power:clock_disable [Tracepoint event] power:clock_enable [Tracepoint event] power:clock_set_rate [Tracepoint event] syscalls:sys_enter_clock_adjtime [Tracepoint event] syscalls:sys_enter_clock_getres [Tracepoint event] syscalls:sys_enter_clock_gettime [Tracepoint event] syscalls:sys_enter_clock_nanosleep [Tracepoint event] syscalls:sys_enter_clock_settime [Tracepoint event] syscalls:sys_exit_clock_adjtime [Tracepoint event] syscalls:sys_exit_clock_getres [Tracepoint event] syscalls:sys_exit_clock_gettime [Tracepoint event] syscalls:sys_exit_clock_nanosleep [Tracepoint event] syscalls:sys_exit_clock_settime [Tracepoint event]
Reduce min 'perf stat --interval-print/-I' to 10ms (Kan Liang)
perf stat --interval in action:
# perf stat -e cycles -I 50 -a usleep $((200 * 1000)) print interval < 100ms. The overhead percentage could be high in some cases. Please proceed with caution. # time counts unit events 0.050233636 48,240,396 cycles 0.100557098 35,492,594 cycles 0.150804687 39,295,112 cycles 0.201032269 33,101,961 cycles 0.201980732 786,379 cycles #
Allow for max_stack greater than PERF_MAX_STACK_DEPTH, as when synthesizing callchains from Intel PT data (Adrian Hunter)
Allow probing on kmodules without DWARF (Masami Hiramatsu)
Fix a segfault when processing a perf.data file with callchains using "perf report --call-graph none" (Namhyung Kim)
Fix unresolved COMMs in 'perf top' when -s comm is used (Namhyung Kim)
Register idle thread in 'perf top' (Namhyung Kim)
Change 'record.samples' type to unsigned long long, fixing output of number of samples in 32-bit architectures (Yang Shi)
Signed-off-by: Arnaldo Carvalho de Melo acme@redhat.com
Adrian Hunter (1): perf callchain: Allow for max_stack greater than PERF_MAX_STACK_DEPTH
Arnaldo Carvalho de Melo (2): perf list: Do event name substring search as last resort when no events found perf list: Honour 'event_glob' whem printing selectable PMUs
Kan Liang (1): perf stat: Reduce min --interval-print to 10ms
Masami Hiramatsu (1): perf probe: Allow probing on kmodules without dwarf
Namhyung Kim (4): perf record: Allocate area for sample_id_hdr in a synthesized comm event perf top: Fix unresolved comm when -s comm is used perf top: Register idle thread perf report: Fix a bug on "--call-graph none" option
Yang Shi (1): perf record: Change 'record.samples' type to unsigned long long
tools/perf/Documentation/perf-list.txt | 2 ++ tools/perf/Documentation/perf-stat.txt | 5 +++-- tools/perf/builtin-list.c | 18 ++++++++++++++++-- tools/perf/builtin-probe.c | 8 +++----- tools/perf/builtin-record.c | 16 ++++++++++++---- tools/perf/builtin-stat.c | 13 +++++++++---- tools/perf/builtin-top.c | 10 ++++++++-- tools/perf/util/hist.c | 2 +- tools/perf/util/machine.c | 2 +- tools/perf/util/pmu.c | 3 ++- tools/perf/util/probe-event.c | 8 +++++--- tools/perf/util/session.c | 2 +- tools/perf/util/session.h | 2 ++ 13 files changed, 65 insertions(+), 26 deletions(-)
Pulled, thanks a lot Arnaldo!
Btw., incidentally I noticed an UI detail: in the 'perf report' and 'perf top' TUI, PageUp does not move the cursor to the topmost line, it stays at whatever partial page position it is.
I think it would be better to behave here like good editors do: PageUp in the first partial page moves to the first line (like 'Home') - and PageDown on the last page of output moves to the last line (like 'End').
Btw., even popular TUI editors get this wrong sometimes:
- 'nano' (joe clone, popular mail editor) gets this right in both directions.
- 'vim' behaves this way on PageDown, but not on PageUp. Nor does it recognize Home/End, only Ctrl-Home/End works.
- 'emacs (e3 package) gets the PageUp/PageDown behavior right, but no Home/End key combo works (and exiting the editor is painful as well ;-)
Thanks,
Ingo