Re: [GIT PULL 00/29] perf/core improvements and fixes

2019-01-26 Thread Ingo Molnar


* Arnaldo Carvalho de Melo  wrote:

> Hi Ingo,
> 
>   Please consider pulling,
> 
> - Arnaldo
> 
> Test results at the end of this message, as usual.
> 
> The following changes since commit f575494d4a610278ea8597f2f798c8431b94e884:
> 
>   Merge tag 'perf-core-for-mingo-5.0-20190121' of 
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core 
> (2019-01-22 11:07:01 +0100)
> 
> are available in the Git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git 
> tags/perf-core-for-mingo-5.0-20190126
> 
> for you to fetch changes up to 76a06125dd57ed2c7559410168b543313fa0cc51:
> 
>   perf augmented_syscalls: Convert to bpf_map() (2019-01-25 15:12:11 +0100)
> 
> 
> perf/core improvements and fixes:
> 
> BPF:
> 
>   Song Liu:
> 
>   - Fix synthesized PERF_RECORD_KSYMBOL/BPF_EVENT
> 
>   Arnaldo Carvalho de Melo:
> 
>   - Add bpf_map() helper, to make BPF map declararions more compact and
> allow for BTF annotations to be made transparently.
> 
> perf script python:
> 
>   Tony Jones:
> 
>   - Remove explicit shebangs.
> 
>   - Fix the PYTHON=python3 builds.
> 
> Core:
> 
>   Davidlohr Bueso:
> 
>   - Update rbtree implementation, getting it closer to the kernel one.
> 
>   - Use cached rbtrees.
> 
>   Arnaldo Carvalho de Melo:
> 
>   - Remove some needless headers from .c and .h files fixing up the fallout,
> to reduce building time when changes are made to .h files
> 
> Signed-off-by: Arnaldo Carvalho de Melo 
> 
> 
> Arnaldo Carvalho de Melo (16):
>   perf color: Add missing stdarg.g to color.h
>   perf symbols: Move symbol_conf to separate file
>   perf annotate: Remove lots of headers from annotate.h
>   perf tools: Move branch structs to branch.h
>   perf block-range: Add missing headers
>   perf symbols: Remove include map.h from dso.h
>   perf symbols: Remove some unnecessary includes from symbol.h
>   perf namespaces: Remove namespaces.h from .h headers
>   perf comm: Remove needless headers from comm.h
>   perf callchain: No need to include perf.h
>   perf bpf: Add bpf_map() helper
>   perf bpf: Convert pid_map() to bpf_map()
>   perf augmented_raw_syscalls: Use bpf_map()
>   perf trace: Fixup etcsnoop example
>   perf bpf examples: Convert etcsnoop to use bpf_map()
>   perf augmented_syscalls: Convert to bpf_map()
> 
> Davidlohr Bueso (7):
>   tools: Update rbtree implementation
>   perf machine: Use cached rbtrees
>   perf callchain: Use cached rbtrees
>   perf util: Use cached rbtree for rblists
>   perf symbols: Use cached rbtrees
>   perf hist: Use cached rbtrees
>   perf sched: Use cached rbtrees
> 
> Song Liu (1):
>   perf bpf: Fix synthesized PERF_RECORD_KSYMBOL/BPF_EVENT
> 
> Tony Jones (6):
>   perf script python: Add trace_context extension module to sys.modules
>   perf script python: Use PyBytes for attr in trace-event-python
>   perf script python: Remove explicit shebang from setup.py
>   perf script python: Remove explicit shebang from tests/attr.c
>   perf script python: Remove explicit shebang from Python scripts
>   perf script python: Add Python3 support to tests/attr.py
> 
>  tools/include/linux/rbtree.h   |  52 +-
>  tools/include/linux/rbtree_augmented.h |  60 +--
>  tools/lib/rbtree.c | 178 +-
>  tools/perf/Makefile.perf   |   4 +-
>  tools/perf/builtin-annotate.c  |   4 +-
>  tools/perf/builtin-c2c.c   |   6 +-
>  tools/perf/builtin-diff.c  |  10 +-
>  tools/perf/builtin-probe.c |   1 +
>  tools/perf/builtin-report.c|   3 +-
>  tools/perf/builtin-sched.c |  45 ++---
>  tools/perf/builtin-top.c   |   2 +-
>  tools/perf/builtin-trace.c |   3 +-
>  tools/perf/examples/bpf/augmented_raw_syscalls.c   |  14 +-
>  tools/perf/examples/bpf/augmented_syscalls.c   |   8 +-
>  tools/perf/examples/bpf/etcsnoop.c |   8 +-
>  tools/perf/include/bpf/bpf.h   |  16 +-
>  tools/perf/scripts/python/exported-sql-viewer.py   |   1 -
>  tools/perf/scripts/python/sched-migration.py   |   2 -
>  tools/perf/scripts/python/stat-cpi.py  |   1 -
>  tools/perf/tests/attr.py   |  33 ++--
>  tools/perf/tests/hists_common.c|   8 +-
>  tools/perf/tests/hists_cumulate.c  |  14 +-
>  tools/perf/tests/hists_link.c  |   8 +-
>  tools/perf/tests/hists_output.c|  32 ++--
>  tools/perf/ui/browsers/hists.c |  16 +-
>  tools/perf/ui/browsers/map.c  

[GIT PULL 00/29] perf/core improvements and fixes

2019-01-25 Thread Arnaldo Carvalho de Melo
Hi Ingo,

Please consider pulling,

- Arnaldo

Test results at the end of this message, as usual.

The following changes since commit f575494d4a610278ea8597f2f798c8431b94e884:

  Merge tag 'perf-core-for-mingo-5.0-20190121' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core 
(2019-01-22 11:07:01 +0100)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git 
tags/perf-core-for-mingo-5.0-20190126

for you to fetch changes up to 76a06125dd57ed2c7559410168b543313fa0cc51:

  perf augmented_syscalls: Convert to bpf_map() (2019-01-25 15:12:11 +0100)


perf/core improvements and fixes:

BPF:

  Song Liu:

  - Fix synthesized PERF_RECORD_KSYMBOL/BPF_EVENT

  Arnaldo Carvalho de Melo:

  - Add bpf_map() helper, to make BPF map declararions more compact and
allow for BTF annotations to be made transparently.

perf script python:

  Tony Jones:

  - Remove explicit shebangs.

  - Fix the PYTHON=python3 builds.

Core:

  Davidlohr Bueso:

  - Update rbtree implementation, getting it closer to the kernel one.

  - Use cached rbtrees.

  Arnaldo Carvalho de Melo:

  - Remove some needless headers from .c and .h files fixing up the fallout,
to reduce building time when changes are made to .h files

Signed-off-by: Arnaldo Carvalho de Melo 


Arnaldo Carvalho de Melo (16):
  perf color: Add missing stdarg.g to color.h
  perf symbols: Move symbol_conf to separate file
  perf annotate: Remove lots of headers from annotate.h
  perf tools: Move branch structs to branch.h
  perf block-range: Add missing headers
  perf symbols: Remove include map.h from dso.h
  perf symbols: Remove some unnecessary includes from symbol.h
  perf namespaces: Remove namespaces.h from .h headers
  perf comm: Remove needless headers from comm.h
  perf callchain: No need to include perf.h
  perf bpf: Add bpf_map() helper
  perf bpf: Convert pid_map() to bpf_map()
  perf augmented_raw_syscalls: Use bpf_map()
  perf trace: Fixup etcsnoop example
  perf bpf examples: Convert etcsnoop to use bpf_map()
  perf augmented_syscalls: Convert to bpf_map()

Davidlohr Bueso (7):
  tools: Update rbtree implementation
  perf machine: Use cached rbtrees
  perf callchain: Use cached rbtrees
  perf util: Use cached rbtree for rblists
  perf symbols: Use cached rbtrees
  perf hist: Use cached rbtrees
  perf sched: Use cached rbtrees

Song Liu (1):
  perf bpf: Fix synthesized PERF_RECORD_KSYMBOL/BPF_EVENT

Tony Jones (6):
  perf script python: Add trace_context extension module to sys.modules
  perf script python: Use PyBytes for attr in trace-event-python
  perf script python: Remove explicit shebang from setup.py
  perf script python: Remove explicit shebang from tests/attr.c
  perf script python: Remove explicit shebang from Python scripts
  perf script python: Add Python3 support to tests/attr.py

 tools/include/linux/rbtree.h   |  52 +-
 tools/include/linux/rbtree_augmented.h |  60 +--
 tools/lib/rbtree.c | 178 +-
 tools/perf/Makefile.perf   |   4 +-
 tools/perf/builtin-annotate.c  |   4 +-
 tools/perf/builtin-c2c.c   |   6 +-
 tools/perf/builtin-diff.c  |  10 +-
 tools/perf/builtin-probe.c |   1 +
 tools/perf/builtin-report.c|   3 +-
 tools/perf/builtin-sched.c |  45 ++---
 tools/perf/builtin-top.c   |   2 +-
 tools/perf/builtin-trace.c |   3 +-
 tools/perf/examples/bpf/augmented_raw_syscalls.c   |  14 +-
 tools/perf/examples/bpf/augmented_syscalls.c   |   8 +-
 tools/perf/examples/bpf/etcsnoop.c |   8 +-
 tools/perf/include/bpf/bpf.h   |  16 +-
 tools/perf/scripts/python/exported-sql-viewer.py   |   1 -
 tools/perf/scripts/python/sched-migration.py   |   2 -
 tools/perf/scripts/python/stat-cpi.py  |   1 -
 tools/perf/tests/attr.py   |  33 ++--
 tools/perf/tests/hists_common.c|   8 +-
 tools/perf/tests/hists_cumulate.c  |  14 +-
 tools/perf/tests/hists_link.c  |   8 +-
 tools/perf/tests/hists_output.c|  32 ++--
 tools/perf/ui/browsers/hists.c |  16 +-
 tools/perf/ui/browsers/map.c   |   1 +
 tools/perf/ui/gtk/annotate.c   |   1 +
 tools/perf/ui/gtk/hists.c  |   6 +-
 tools/perf/ui/stdio/hist.c |   3 +-
 tools/perf/util/annotate.c |   1 +
 

Re: [GIT PULL 00/29] perf/core improvements and fixes

2019-01-03 Thread Ingo Molnar


* Arnaldo Carvalho de Melo  wrote:

> Hi Ingo,
> 
>   Please consider pulling,
> 
> - Arnaldo
> 
> Test results at the end of this message, as usual.
> 
> The following changes since commit 883f4def8b77e6870ce42be279564cca0256c611:
> 
>   Merge tag 'perf-core-for-mingo-4.21-20181218' of 
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core 
> (2018-12-20 18:51:47 +0100)
> 
> are available in the Git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git 
> tags/perf-core-for-mingo-4.21-20190103
> 
> for you to fetch changes up to b25756df5b28cd7b6e91200fc5012e7c76e8ec69:
> 
>   perf session: Add comment for perf_session__register_idle_thread() 
> (2019-01-02 11:05:06 -0300)
> 
> 
> perf/core improvements and fixes:
> 
> perf c2c:
> 
>   Jiri Olsa:
> 
>   - Change the default coalesce setup to from '--coalesce pid,iaddr' to just 
> '--coalesce iaddr'.
> 
>   - Increase the HITM ratio limit for displayed cachelines.
> 
> perf script:
> 
>   Andi Kleen:
> 
>   - Fix LBR skid dump problems in brstackinsn.
> 
> perf trace:
> 
>   Arnaldo Carvalho de Melo:
> 
>   - Check if the raw_syscalls:sys_{enter,exit} are setup before setting tp 
> filter.
> 
>   - Do not hardcode the size of the tracepoint common_ fields.
> 
>   - Beautify USBDEFFS_ ioctl commands.
> 
>   Colin Ian King:
> 
>   - Use correct SECCOMP prefix spelling, "SECOMP_*" -> "SECCOMP_*".
> 
> perf python:
> 
>   Jiri Olsa:
> 
>   - Do not force closing original perf descriptor in evlist.get_pollfd().
> 
> tools misc:
> 
>   Jiri Olsa:
> 
>   - Allow overriding CFLAGS and LDFLAGS.
> 
> perf build:
> 
>   Stanislav Fomichev:
> 
>   - Don't unconditionally link the libbfd feature test to -liberty and -lz
> 
> thread-stack:
> 
>   Adrian Hunter:
> 
>   - Fix processing for the idle task, having a stack per cpu.
> 
> Signed-off-by: Arnaldo Carvalho de Melo 
> 
> 
> Adrian Hunter (8):
>   perf thread-stack: Simplify some code in thread_stack__process()
>   perf thread-stack: Tidy thread_stack__bottom() usage
>   perf thread-stack: Avoid direct reference to the thread's stack
>   perf thread-stack: Allow for a thread stack array
>   perf thread-stack: Factor out thread_stack__init()
>   perf thread-stack: Allocate an array of thread stacks
>   perf thread-stack: Fix thread stack processing for the idle task
>   perf session: Add comment for perf_session__register_idle_thread()
> 
> Andi Kleen (1):
>   perf script: Fix LBR skid dump problems in brstackinsn
> 
> Arnaldo Carvalho de Melo (11):
>   perf trace: Check if the raw_syscalls:sys_{enter,exit} are setup before 
> setting tp filter
>   perf beauty mmap: PROT_WRITE should come before PROT_EXEC
>   perf trace: Do not hardcode the size of the tracepoint common_ fields
>   perf trace: Rename thread_thread->paths to thread_trace->files
>   perf trace: Move the files table resizing to outside set_pathname()
>   perf trace: Store the major number for a file when storing its pathname
>   tools headers uapi: Grab a copy of usbdevice_fs.h
>   perf beauty ioctl: Add generator for USBDEVFS_ ioctl commands
>   perf trace: Wire up ioctl's USBDEBFS_ cmd table generator
>   perf trace beauty: Export function to get the files for a thread
>   perf trace beauty ioctl: Beautify USBDEVFS_ commands
> 
> Colin Ian King (1):
>   perf trace: Use correct SECCOMP prefix spelling, "SECOMP_*" -> 
> "SECCOMP_*"
> 
> Jiri Olsa (7):
>   perf python: Do not force closing original perf descriptor in 
> evlist.get_pollfd()
>   perf c2c: Change the default coalesce setup
>   perf c2c: Increase the HITM ratio limit for displayed cachelines
>   tools power x86_energy_perf_policy: Override CFLAGS assignments and add 
> LDFLAGS to build command
>   tools thermal tmon: Allow overriding CFLAGS assignments
>   tools power turbostat: Override CFLAGS assignments and add LDFLAGS to 
> build command
>   tools gpio: Allow overriding CFLAGS
> 
> Stanislav Fomichev (1):
>   perf build: Don't unconditionally link the libbfd feature test to 
> -liberty and -lz
> 
>  tools/build/Makefile.feature   |   4 +-
>  tools/build/feature/Makefile   |  10 +-
>  tools/gpio/Makefile|   2 +-
>  tools/include/uapi/linux/usbdevice_fs.h| 201 ++
>  tools/perf/Makefile.config |  44 ++--
>  tools/perf/Makefile.perf   |   8 +
>  tools/perf/builtin-c2c.c   |   4 +-
>  tools/perf/builtin-script.c|  21 +-
>  tools/perf/builtin-trace.c | 142 +
>  tools/perf/check-headers.sh|   1 +
>  tools/perf/trace/beauty/beauty.h  

[GIT PULL 00/29] perf/core improvements and fixes

2019-01-03 Thread Arnaldo Carvalho de Melo
Hi Ingo,

Please consider pulling,

- Arnaldo

Test results at the end of this message, as usual.

The following changes since commit 883f4def8b77e6870ce42be279564cca0256c611:

  Merge tag 'perf-core-for-mingo-4.21-20181218' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core 
(2018-12-20 18:51:47 +0100)

are available in the Git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git 
tags/perf-core-for-mingo-4.21-20190103

for you to fetch changes up to b25756df5b28cd7b6e91200fc5012e7c76e8ec69:

  perf session: Add comment for perf_session__register_idle_thread() 
(2019-01-02 11:05:06 -0300)


perf/core improvements and fixes:

perf c2c:

  Jiri Olsa:

  - Change the default coalesce setup to from '--coalesce pid,iaddr' to just 
'--coalesce iaddr'.

  - Increase the HITM ratio limit for displayed cachelines.

perf script:

  Andi Kleen:

  - Fix LBR skid dump problems in brstackinsn.

perf trace:

  Arnaldo Carvalho de Melo:

  - Check if the raw_syscalls:sys_{enter,exit} are setup before setting tp 
filter.

  - Do not hardcode the size of the tracepoint common_ fields.

  - Beautify USBDEFFS_ ioctl commands.

  Colin Ian King:

  - Use correct SECCOMP prefix spelling, "SECOMP_*" -> "SECCOMP_*".

perf python:

  Jiri Olsa:

  - Do not force closing original perf descriptor in evlist.get_pollfd().

tools misc:

  Jiri Olsa:

  - Allow overriding CFLAGS and LDFLAGS.

perf build:

  Stanislav Fomichev:

  - Don't unconditionally link the libbfd feature test to -liberty and -lz

thread-stack:

  Adrian Hunter:

  - Fix processing for the idle task, having a stack per cpu.

Signed-off-by: Arnaldo Carvalho de Melo 


Adrian Hunter (8):
  perf thread-stack: Simplify some code in thread_stack__process()
  perf thread-stack: Tidy thread_stack__bottom() usage
  perf thread-stack: Avoid direct reference to the thread's stack
  perf thread-stack: Allow for a thread stack array
  perf thread-stack: Factor out thread_stack__init()
  perf thread-stack: Allocate an array of thread stacks
  perf thread-stack: Fix thread stack processing for the idle task
  perf session: Add comment for perf_session__register_idle_thread()

Andi Kleen (1):
  perf script: Fix LBR skid dump problems in brstackinsn

Arnaldo Carvalho de Melo (11):
  perf trace: Check if the raw_syscalls:sys_{enter,exit} are setup before 
setting tp filter
  perf beauty mmap: PROT_WRITE should come before PROT_EXEC
  perf trace: Do not hardcode the size of the tracepoint common_ fields
  perf trace: Rename thread_thread->paths to thread_trace->files
  perf trace: Move the files table resizing to outside set_pathname()
  perf trace: Store the major number for a file when storing its pathname
  tools headers uapi: Grab a copy of usbdevice_fs.h
  perf beauty ioctl: Add generator for USBDEVFS_ ioctl commands
  perf trace: Wire up ioctl's USBDEBFS_ cmd table generator
  perf trace beauty: Export function to get the files for a thread
  perf trace beauty ioctl: Beautify USBDEVFS_ commands

Colin Ian King (1):
  perf trace: Use correct SECCOMP prefix spelling, "SECOMP_*" -> "SECCOMP_*"

Jiri Olsa (7):
  perf python: Do not force closing original perf descriptor in 
evlist.get_pollfd()
  perf c2c: Change the default coalesce setup
  perf c2c: Increase the HITM ratio limit for displayed cachelines
  tools power x86_energy_perf_policy: Override CFLAGS assignments and add 
LDFLAGS to build command
  tools thermal tmon: Allow overriding CFLAGS assignments
  tools power turbostat: Override CFLAGS assignments and add LDFLAGS to 
build command
  tools gpio: Allow overriding CFLAGS

Stanislav Fomichev (1):
  perf build: Don't unconditionally link the libbfd feature test to 
-liberty and -lz

 tools/build/Makefile.feature   |   4 +-
 tools/build/feature/Makefile   |  10 +-
 tools/gpio/Makefile|   2 +-
 tools/include/uapi/linux/usbdevice_fs.h| 201 ++
 tools/perf/Makefile.config |  44 ++--
 tools/perf/Makefile.perf   |   8 +
 tools/perf/builtin-c2c.c   |   4 +-
 tools/perf/builtin-script.c|  21 +-
 tools/perf/builtin-trace.c | 142 +
 tools/perf/check-headers.sh|   1 +
 tools/perf/trace/beauty/beauty.h   |   7 +
 tools/perf/trace/beauty/ioctl.c|  22 ++
 tools/perf/trace/beauty/mmap.c |   2 +-
 tools/perf/trace/beauty/seccomp.c  |   4 +-
 tools/perf/trace/beauty/usbdevfs_ioctl.sh  |  19 ++
 tools/perf/util/dump-insn.c|   8 +
 

Re: [GIT PULL 00/29] perf/core improvements and fixes

2016-12-20 Thread Ingo Molnar

* Arnaldo Carvalho de Melo  wrote:

> Hi Ingo,
> 
> Please consider pulling, I had most of this queued before your first
> pull req to Linus for 4.10, most are fixes, with 'perf sched timehist --idle'
> as a followup new feature to the 'perf sched timehist' command introduced in
> this window.
>   
>   One other thing that delayed this was the samples/bpf/ switch to
> tools/lib/bpf/ that involved fixing up merge clashes with net.git and also
> to properly test it, after more rounds than antecipated, but all seems ok
> now and would be good to get this merge issues past us ASAP.
> 
> - Arnaldo
> 
> Test results at the end of this message, as usual.
> 
> The following changes since commit e7aa8c2eb11ba69b1b69099c3c7bd6be3087b0ba:
> 
>   Merge tag 'docs-4.10' of git://git.lwn.net/linux (2016-12-12 21:58:13 -0800)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git 
> tags/perf-core-for-mingo-20161220
> 
> for you to fetch changes up to 9899694a7f67714216665b87318eb367e2c5c901:
> 
>   samples/bpf: Move open_raw_sock to separate header (2016-12-20 12:00:40 
> -0300)
> 
> 
> perf/core improvements and fixes:
> 
> New features:
> 
> - Introduce 'perf sched timehist --idle', to analyse processes
>   going to/from idle state (Namhyung Kim)
> 
> Fixes:
> 
> - Allow 'perf record -u user' to continue when facing races with threads
>   going away after having scanned them via /proc (Jiri Olsa)
> 
> - Fix 'perf mem' --all-user/--all-kernel options (Jiri Olsa)
> 
> - Support jumps with multiple arguments (Ravi Bangoria)
> 
> - Fix jumps to before the function where they are located (Ravi
> Bangoria)
> 
> - Fix lock-pi help string (Davidlohr Bueso)
> 
> - Fix build of 'perf trace' in odd systems such as a RHEL PPC one (Jiri Olsa)
> 
> - Do not overwrite valid build id in 'perf diff' (Kan Liang)
> 
> - Don't throw error for zero length symbols, allowing the use of the TUI
>   in PowerPC, where such symbols became more common recently (Ravi Bangoria)
> 
> Infrastructure:
> 
> - Switch of samples/bpf/ to use tools/lib/bpf, removing libbpf
>   duplication (Joe Stringer)
> 
> - Move headers check into bash script (Jiri Olsa)
> 
> Signed-off-by: Arnaldo Carvalho de Melo 
> 
> 
> Arnaldo Carvalho de Melo (3):
>   perf tools: Remove some needless __maybe_unused
>   samples/bpf: Make perf_event_read() static
>   samples/bpf: Be consistent with bpf_load_program bpf_insn parameter
> 
> Davidlohr Bueso (1):
>   perf bench futex: Fix lock-pi help string
> 
> Jiri Olsa (7):
>   perf tools: Move headers check into bash script
>   perf mem: Fix --all-user/--all-kernel options
>   perf evsel: Use variable instead of repeating lengthy FD macro
>   perf thread_map: Add thread_map__remove function
>   perf evsel: Allow to ignore missing pid
>   perf record: Force ignore_missing_thread for uid option
>   perf trace: Check if MAP_32BIT is defined (again)
> 
> Joe Stringer (8):
>   tools lib bpf: Sync {tools,}/include/uapi/linux/bpf.h
>   tools lib bpf: use __u32 from linux/types.h
>   tools lib bpf: Add flags to bpf_create_map()
>   samples/bpf: Make samples more libbpf-centric
>   samples/bpf: Switch over to libbpf
>   tools lib bpf: Add bpf_prog_{attach,detach}
>   samples/bpf: Remove perf_event_open() declaration
>   samples/bpf: Move open_raw_sock to separate header
> 
> Kan Liang (1):
>   perf diff: Do not overwrite valid build id
> 
> Namhyung Kim (6):
>   perf sched timehist: Split is_idle_sample()
>   perf sched timehist: Introduce struct idle_time_data
>   perf sched timehist: Save callchain when entering idle
>   perf sched timehist: Skip non-idle events when necessary
>   perf sched timehist: Add -I/--idle-hist option
>   perf sched timehist: Show callchains for idle stat
> 
> Ravi Bangoria (3):
>   perf annotate: Support jump instruction with target as second operand
>   perf annotate: Fix jump target outside of function address range
>   perf annotate: Don't throw error for zero length symbols
> 
>  samples/bpf/Makefile  |  70 +--
>  samples/bpf/README.rst|   4 +-
>  samples/bpf/bpf_load.c|  21 +-
>  samples/bpf/bpf_load.h|   3 +
>  samples/bpf/fds_example.c |  13 +-
>  samples/bpf/lathist_user.c|   2 +-
>  samples/bpf/libbpf.c  | 176 ---
>  samples/bpf/libbpf.h  |  28 +-
>  samples/bpf/lwt_len_hist_user.c   |   6 +-
>  samples/bpf/offwaketime_user.c|   8 +-
>  samples/bpf/sampleip_user.c   |   7 +-
>  

Re: [GIT PULL 00/29] perf/core improvements and fixes

2016-12-20 Thread Ingo Molnar

* Arnaldo Carvalho de Melo  wrote:

> Hi Ingo,
> 
> Please consider pulling, I had most of this queued before your first
> pull req to Linus for 4.10, most are fixes, with 'perf sched timehist --idle'
> as a followup new feature to the 'perf sched timehist' command introduced in
> this window.
>   
>   One other thing that delayed this was the samples/bpf/ switch to
> tools/lib/bpf/ that involved fixing up merge clashes with net.git and also
> to properly test it, after more rounds than antecipated, but all seems ok
> now and would be good to get this merge issues past us ASAP.
> 
> - Arnaldo
> 
> Test results at the end of this message, as usual.
> 
> The following changes since commit e7aa8c2eb11ba69b1b69099c3c7bd6be3087b0ba:
> 
>   Merge tag 'docs-4.10' of git://git.lwn.net/linux (2016-12-12 21:58:13 -0800)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git 
> tags/perf-core-for-mingo-20161220
> 
> for you to fetch changes up to 9899694a7f67714216665b87318eb367e2c5c901:
> 
>   samples/bpf: Move open_raw_sock to separate header (2016-12-20 12:00:40 
> -0300)
> 
> 
> perf/core improvements and fixes:
> 
> New features:
> 
> - Introduce 'perf sched timehist --idle', to analyse processes
>   going to/from idle state (Namhyung Kim)
> 
> Fixes:
> 
> - Allow 'perf record -u user' to continue when facing races with threads
>   going away after having scanned them via /proc (Jiri Olsa)
> 
> - Fix 'perf mem' --all-user/--all-kernel options (Jiri Olsa)
> 
> - Support jumps with multiple arguments (Ravi Bangoria)
> 
> - Fix jumps to before the function where they are located (Ravi
> Bangoria)
> 
> - Fix lock-pi help string (Davidlohr Bueso)
> 
> - Fix build of 'perf trace' in odd systems such as a RHEL PPC one (Jiri Olsa)
> 
> - Do not overwrite valid build id in 'perf diff' (Kan Liang)
> 
> - Don't throw error for zero length symbols, allowing the use of the TUI
>   in PowerPC, where such symbols became more common recently (Ravi Bangoria)
> 
> Infrastructure:
> 
> - Switch of samples/bpf/ to use tools/lib/bpf, removing libbpf
>   duplication (Joe Stringer)
> 
> - Move headers check into bash script (Jiri Olsa)
> 
> Signed-off-by: Arnaldo Carvalho de Melo 
> 
> 
> Arnaldo Carvalho de Melo (3):
>   perf tools: Remove some needless __maybe_unused
>   samples/bpf: Make perf_event_read() static
>   samples/bpf: Be consistent with bpf_load_program bpf_insn parameter
> 
> Davidlohr Bueso (1):
>   perf bench futex: Fix lock-pi help string
> 
> Jiri Olsa (7):
>   perf tools: Move headers check into bash script
>   perf mem: Fix --all-user/--all-kernel options
>   perf evsel: Use variable instead of repeating lengthy FD macro
>   perf thread_map: Add thread_map__remove function
>   perf evsel: Allow to ignore missing pid
>   perf record: Force ignore_missing_thread for uid option
>   perf trace: Check if MAP_32BIT is defined (again)
> 
> Joe Stringer (8):
>   tools lib bpf: Sync {tools,}/include/uapi/linux/bpf.h
>   tools lib bpf: use __u32 from linux/types.h
>   tools lib bpf: Add flags to bpf_create_map()
>   samples/bpf: Make samples more libbpf-centric
>   samples/bpf: Switch over to libbpf
>   tools lib bpf: Add bpf_prog_{attach,detach}
>   samples/bpf: Remove perf_event_open() declaration
>   samples/bpf: Move open_raw_sock to separate header
> 
> Kan Liang (1):
>   perf diff: Do not overwrite valid build id
> 
> Namhyung Kim (6):
>   perf sched timehist: Split is_idle_sample()
>   perf sched timehist: Introduce struct idle_time_data
>   perf sched timehist: Save callchain when entering idle
>   perf sched timehist: Skip non-idle events when necessary
>   perf sched timehist: Add -I/--idle-hist option
>   perf sched timehist: Show callchains for idle stat
> 
> Ravi Bangoria (3):
>   perf annotate: Support jump instruction with target as second operand
>   perf annotate: Fix jump target outside of function address range
>   perf annotate: Don't throw error for zero length symbols
> 
>  samples/bpf/Makefile  |  70 +--
>  samples/bpf/README.rst|   4 +-
>  samples/bpf/bpf_load.c|  21 +-
>  samples/bpf/bpf_load.h|   3 +
>  samples/bpf/fds_example.c |  13 +-
>  samples/bpf/lathist_user.c|   2 +-
>  samples/bpf/libbpf.c  | 176 ---
>  samples/bpf/libbpf.h  |  28 +-
>  samples/bpf/lwt_len_hist_user.c   |   6 +-
>  samples/bpf/offwaketime_user.c|   8 +-
>  samples/bpf/sampleip_user.c   |   7 +-
>  samples/bpf/sock_example.c

[GIT PULL 00/29] perf/core improvements and fixes

2016-12-20 Thread Arnaldo Carvalho de Melo
Hi Ingo,

Please consider pulling, I had most of this queued before your first
pull req to Linus for 4.10, most are fixes, with 'perf sched timehist --idle'
as a followup new feature to the 'perf sched timehist' command introduced in
this window.

One other thing that delayed this was the samples/bpf/ switch to
tools/lib/bpf/ that involved fixing up merge clashes with net.git and also
to properly test it, after more rounds than antecipated, but all seems ok
now and would be good to get this merge issues past us ASAP.

- Arnaldo

Test results at the end of this message, as usual.

The following changes since commit e7aa8c2eb11ba69b1b69099c3c7bd6be3087b0ba:

  Merge tag 'docs-4.10' of git://git.lwn.net/linux (2016-12-12 21:58:13 -0800)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git 
tags/perf-core-for-mingo-20161220

for you to fetch changes up to 9899694a7f67714216665b87318eb367e2c5c901:

  samples/bpf: Move open_raw_sock to separate header (2016-12-20 12:00:40 -0300)


perf/core improvements and fixes:

New features:

- Introduce 'perf sched timehist --idle', to analyse processes
  going to/from idle state (Namhyung Kim)

Fixes:

- Allow 'perf record -u user' to continue when facing races with threads
  going away after having scanned them via /proc (Jiri Olsa)

- Fix 'perf mem' --all-user/--all-kernel options (Jiri Olsa)

- Support jumps with multiple arguments (Ravi Bangoria)

- Fix jumps to before the function where they are located (Ravi
Bangoria)

- Fix lock-pi help string (Davidlohr Bueso)

- Fix build of 'perf trace' in odd systems such as a RHEL PPC one (Jiri Olsa)

- Do not overwrite valid build id in 'perf diff' (Kan Liang)

- Don't throw error for zero length symbols, allowing the use of the TUI
  in PowerPC, where such symbols became more common recently (Ravi Bangoria)

Infrastructure:

- Switch of samples/bpf/ to use tools/lib/bpf, removing libbpf
  duplication (Joe Stringer)

- Move headers check into bash script (Jiri Olsa)

Signed-off-by: Arnaldo Carvalho de Melo 


Arnaldo Carvalho de Melo (3):
  perf tools: Remove some needless __maybe_unused
  samples/bpf: Make perf_event_read() static
  samples/bpf: Be consistent with bpf_load_program bpf_insn parameter

Davidlohr Bueso (1):
  perf bench futex: Fix lock-pi help string

Jiri Olsa (7):
  perf tools: Move headers check into bash script
  perf mem: Fix --all-user/--all-kernel options
  perf evsel: Use variable instead of repeating lengthy FD macro
  perf thread_map: Add thread_map__remove function
  perf evsel: Allow to ignore missing pid
  perf record: Force ignore_missing_thread for uid option
  perf trace: Check if MAP_32BIT is defined (again)

Joe Stringer (8):
  tools lib bpf: Sync {tools,}/include/uapi/linux/bpf.h
  tools lib bpf: use __u32 from linux/types.h
  tools lib bpf: Add flags to bpf_create_map()
  samples/bpf: Make samples more libbpf-centric
  samples/bpf: Switch over to libbpf
  tools lib bpf: Add bpf_prog_{attach,detach}
  samples/bpf: Remove perf_event_open() declaration
  samples/bpf: Move open_raw_sock to separate header

Kan Liang (1):
  perf diff: Do not overwrite valid build id

Namhyung Kim (6):
  perf sched timehist: Split is_idle_sample()
  perf sched timehist: Introduce struct idle_time_data
  perf sched timehist: Save callchain when entering idle
  perf sched timehist: Skip non-idle events when necessary
  perf sched timehist: Add -I/--idle-hist option
  perf sched timehist: Show callchains for idle stat

Ravi Bangoria (3):
  perf annotate: Support jump instruction with target as second operand
  perf annotate: Fix jump target outside of function address range
  perf annotate: Don't throw error for zero length symbols

 samples/bpf/Makefile  |  70 +--
 samples/bpf/README.rst|   4 +-
 samples/bpf/bpf_load.c|  21 +-
 samples/bpf/bpf_load.h|   3 +
 samples/bpf/fds_example.c |  13 +-
 samples/bpf/lathist_user.c|   2 +-
 samples/bpf/libbpf.c  | 176 ---
 samples/bpf/libbpf.h  |  28 +-
 samples/bpf/lwt_len_hist_user.c   |   6 +-
 samples/bpf/offwaketime_user.c|   8 +-
 samples/bpf/sampleip_user.c   |   7 +-
 samples/bpf/sock_example.c|  14 +-
 samples/bpf/sock_example.h|  35 ++
 samples/bpf/sockex1_user.c|   7 +-
 samples/bpf/sockex2_user.c|   5 +-
 samples/bpf/sockex3_user.c|   5 +-
 

[GIT PULL 00/29] perf/core improvements and fixes

2016-12-20 Thread Arnaldo Carvalho de Melo
Hi Ingo,

Please consider pulling, I had most of this queued before your first
pull req to Linus for 4.10, most are fixes, with 'perf sched timehist --idle'
as a followup new feature to the 'perf sched timehist' command introduced in
this window.

One other thing that delayed this was the samples/bpf/ switch to
tools/lib/bpf/ that involved fixing up merge clashes with net.git and also
to properly test it, after more rounds than antecipated, but all seems ok
now and would be good to get this merge issues past us ASAP.

- Arnaldo

Test results at the end of this message, as usual.

The following changes since commit e7aa8c2eb11ba69b1b69099c3c7bd6be3087b0ba:

  Merge tag 'docs-4.10' of git://git.lwn.net/linux (2016-12-12 21:58:13 -0800)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git 
tags/perf-core-for-mingo-20161220

for you to fetch changes up to 9899694a7f67714216665b87318eb367e2c5c901:

  samples/bpf: Move open_raw_sock to separate header (2016-12-20 12:00:40 -0300)


perf/core improvements and fixes:

New features:

- Introduce 'perf sched timehist --idle', to analyse processes
  going to/from idle state (Namhyung Kim)

Fixes:

- Allow 'perf record -u user' to continue when facing races with threads
  going away after having scanned them via /proc (Jiri Olsa)

- Fix 'perf mem' --all-user/--all-kernel options (Jiri Olsa)

- Support jumps with multiple arguments (Ravi Bangoria)

- Fix jumps to before the function where they are located (Ravi
Bangoria)

- Fix lock-pi help string (Davidlohr Bueso)

- Fix build of 'perf trace' in odd systems such as a RHEL PPC one (Jiri Olsa)

- Do not overwrite valid build id in 'perf diff' (Kan Liang)

- Don't throw error for zero length symbols, allowing the use of the TUI
  in PowerPC, where such symbols became more common recently (Ravi Bangoria)

Infrastructure:

- Switch of samples/bpf/ to use tools/lib/bpf, removing libbpf
  duplication (Joe Stringer)

- Move headers check into bash script (Jiri Olsa)

Signed-off-by: Arnaldo Carvalho de Melo 


Arnaldo Carvalho de Melo (3):
  perf tools: Remove some needless __maybe_unused
  samples/bpf: Make perf_event_read() static
  samples/bpf: Be consistent with bpf_load_program bpf_insn parameter

Davidlohr Bueso (1):
  perf bench futex: Fix lock-pi help string

Jiri Olsa (7):
  perf tools: Move headers check into bash script
  perf mem: Fix --all-user/--all-kernel options
  perf evsel: Use variable instead of repeating lengthy FD macro
  perf thread_map: Add thread_map__remove function
  perf evsel: Allow to ignore missing pid
  perf record: Force ignore_missing_thread for uid option
  perf trace: Check if MAP_32BIT is defined (again)

Joe Stringer (8):
  tools lib bpf: Sync {tools,}/include/uapi/linux/bpf.h
  tools lib bpf: use __u32 from linux/types.h
  tools lib bpf: Add flags to bpf_create_map()
  samples/bpf: Make samples more libbpf-centric
  samples/bpf: Switch over to libbpf
  tools lib bpf: Add bpf_prog_{attach,detach}
  samples/bpf: Remove perf_event_open() declaration
  samples/bpf: Move open_raw_sock to separate header

Kan Liang (1):
  perf diff: Do not overwrite valid build id

Namhyung Kim (6):
  perf sched timehist: Split is_idle_sample()
  perf sched timehist: Introduce struct idle_time_data
  perf sched timehist: Save callchain when entering idle
  perf sched timehist: Skip non-idle events when necessary
  perf sched timehist: Add -I/--idle-hist option
  perf sched timehist: Show callchains for idle stat

Ravi Bangoria (3):
  perf annotate: Support jump instruction with target as second operand
  perf annotate: Fix jump target outside of function address range
  perf annotate: Don't throw error for zero length symbols

 samples/bpf/Makefile  |  70 +--
 samples/bpf/README.rst|   4 +-
 samples/bpf/bpf_load.c|  21 +-
 samples/bpf/bpf_load.h|   3 +
 samples/bpf/fds_example.c |  13 +-
 samples/bpf/lathist_user.c|   2 +-
 samples/bpf/libbpf.c  | 176 ---
 samples/bpf/libbpf.h  |  28 +-
 samples/bpf/lwt_len_hist_user.c   |   6 +-
 samples/bpf/offwaketime_user.c|   8 +-
 samples/bpf/sampleip_user.c   |   7 +-
 samples/bpf/sock_example.c|  14 +-
 samples/bpf/sock_example.h|  35 ++
 samples/bpf/sockex1_user.c|   7 +-
 samples/bpf/sockex2_user.c|   5 +-
 samples/bpf/sockex3_user.c|   5 +-
 

Re: [GIT PULL 00/29] perf/core improvements and fixes

2016-02-03 Thread Ingo Molnar

* Arnaldo Carvalho de Melo  wrote:

> Hi Ingo,
> 
>   Please consider pulling,
> 
> - Arnaldo
> 
> The following changes since commit 8eb22c984eb9eeaed47130f5679acd367af69678:
> 
>   Merge tag 'perf-core-for-mingo-3' of 
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core 
> (2016-02-03 11:02:37 +0100)
> 
> 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 b62e8dfcda8cb133c062c0e1207afea2476eb7fd:
> 
>   perf hists browser: Add 'L' hotkey to change percent limit (2016-02-03 
> 12:24:22 -0300)
> 
> 
> perf/core improvements and fixes:
> 
> New features:
> 
> - Add 'L' hotkey to dynamicly set the percent threshold for histogram
>   entries and callchains, i.e. dynamicly do what the --percent-limit
>   command line option to 'top' and 'report' does. (Namhyung Kim)
> 
> Infrastructure:
> 
> - Per hists field and sort lists, that will be used, for instance,
>   in the c2c tool (Jiri Olsa)
> 
> Documentation:
> 
> - Update documentation of --sort and --perf-limit options
>   for 'perf report' (Namhyung Kim)
> 
> Signed-off-by: Arnaldo Carvalho de Melo 
> 
> 
> Arnaldo Carvalho de Melo (1):
>   perf top: Move UI initialization ahead of sort setup
> 
> Jiri Olsa (25):
>   perf hists: Factor output_resort from hists__output_resort
>   perf hists: Introduce perf_evsel__output_resort function
>   perf hists: Add _idx fields into struct perf_hpp_fmt
>   perf hists: Use struct perf_hpp_fmt::idx in perf_hpp__reset_width
>   perf hists: Add 'equal' method to perf_hpp_fmt struct
>   perf hists: Add 'hpp__equal' callback function
>   perf hists: Make hpp setup function generic
>   perf report: Move UI initialization ahead of sort setup
>   perf hists: Allocate output sort field
>   perf hists: Remove perf_hpp__column_(disable|enable)
>   perf hists: Properly release format fields
>   perf hists: Separate sort fields parsing into setup_sort_list function
>   perf hists: Separate output fields parsing into setup_output_list 
> function
>   perf hists: Introduce struct perf_hpp_list
>   perf hists: Introduce perf_hpp_list__init function
>   perf hists: Add perf_hpp_list register helpers
>   perf hists: Pass perf_hpp_list all the way through setup_output_list
>   perf hists: Introduce perf_hpp_list__for_each_format macro
>   perf hists: Introduce perf_hpp_list__for_each_format_safe macro
>   perf hists: Introduce perf_hpp_list__for_each_sort_list macro
>   perf hists: Introduce perf_hpp_list__for_each_sort_list_safe macro
>   perf hists: Add struct perf_hpp_list argument to helper functions
>   perf tools: Add hpp_list into struct hists object
>   perf hists: Introduce hists__for_each_format macro
>   perf hists: Introduce hists__for_each_sort_list macro
> 
> Namhyung Kim (3):
>   perf report: Update documentation of --sort option
>   perf report: Update documention of --percent-limit option
>   perf hists browser: Add 'L' hotkey to change percent limit
> 
>  tools/perf/Documentation/perf-report.txt |  37 +++---
>  tools/perf/builtin-annotate.c|   2 +-
>  tools/perf/builtin-report.c  |  20 +--
>  tools/perf/builtin-top.c |  24 ++--
>  tools/perf/tests/hists_cumulate.c|   2 +-
>  tools/perf/tests/hists_filter.c  |   2 +-
>  tools/perf/tests/hists_output.c  |  10 +-
>  tools/perf/ui/browsers/hists.c   |  63 +-
>  tools/perf/ui/gtk/hists.c|   6 +-
>  tools/perf/ui/hist.c | 170 +
>  tools/perf/ui/stdio/hist.c   |   8 +-
>  tools/perf/util/hist.c   |  47 +--
>  tools/perf/util/hist.h   |  65 +++---
>  tools/perf/util/sort.c   | 205 
> +--
>  14 files changed, 425 insertions(+), 236 deletions(-)

Pulled, thanks a lot Arnaldo!

Ingo


[GIT PULL 00/29] perf/core improvements and fixes

2016-02-03 Thread Arnaldo Carvalho de Melo
Hi Ingo,

Please consider pulling,

- Arnaldo

The following changes since commit 8eb22c984eb9eeaed47130f5679acd367af69678:

  Merge tag 'perf-core-for-mingo-3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core 
(2016-02-03 11:02:37 +0100)

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 b62e8dfcda8cb133c062c0e1207afea2476eb7fd:

  perf hists browser: Add 'L' hotkey to change percent limit (2016-02-03 
12:24:22 -0300)


perf/core improvements and fixes:

New features:

- Add 'L' hotkey to dynamicly set the percent threshold for histogram
  entries and callchains, i.e. dynamicly do what the --percent-limit
  command line option to 'top' and 'report' does. (Namhyung Kim)

Infrastructure:

- Per hists field and sort lists, that will be used, for instance,
  in the c2c tool (Jiri Olsa)

Documentation:

- Update documentation of --sort and --perf-limit options
  for 'perf report' (Namhyung Kim)

Signed-off-by: Arnaldo Carvalho de Melo 


Arnaldo Carvalho de Melo (1):
  perf top: Move UI initialization ahead of sort setup

Jiri Olsa (25):
  perf hists: Factor output_resort from hists__output_resort
  perf hists: Introduce perf_evsel__output_resort function
  perf hists: Add _idx fields into struct perf_hpp_fmt
  perf hists: Use struct perf_hpp_fmt::idx in perf_hpp__reset_width
  perf hists: Add 'equal' method to perf_hpp_fmt struct
  perf hists: Add 'hpp__equal' callback function
  perf hists: Make hpp setup function generic
  perf report: Move UI initialization ahead of sort setup
  perf hists: Allocate output sort field
  perf hists: Remove perf_hpp__column_(disable|enable)
  perf hists: Properly release format fields
  perf hists: Separate sort fields parsing into setup_sort_list function
  perf hists: Separate output fields parsing into setup_output_list function
  perf hists: Introduce struct perf_hpp_list
  perf hists: Introduce perf_hpp_list__init function
  perf hists: Add perf_hpp_list register helpers
  perf hists: Pass perf_hpp_list all the way through setup_output_list
  perf hists: Introduce perf_hpp_list__for_each_format macro
  perf hists: Introduce perf_hpp_list__for_each_format_safe macro
  perf hists: Introduce perf_hpp_list__for_each_sort_list macro
  perf hists: Introduce perf_hpp_list__for_each_sort_list_safe macro
  perf hists: Add struct perf_hpp_list argument to helper functions
  perf tools: Add hpp_list into struct hists object
  perf hists: Introduce hists__for_each_format macro
  perf hists: Introduce hists__for_each_sort_list macro

Namhyung Kim (3):
  perf report: Update documentation of --sort option
  perf report: Update documention of --percent-limit option
  perf hists browser: Add 'L' hotkey to change percent limit

 tools/perf/Documentation/perf-report.txt |  37 +++---
 tools/perf/builtin-annotate.c|   2 +-
 tools/perf/builtin-report.c  |  20 +--
 tools/perf/builtin-top.c |  24 ++--
 tools/perf/tests/hists_cumulate.c|   2 +-
 tools/perf/tests/hists_filter.c  |   2 +-
 tools/perf/tests/hists_output.c  |  10 +-
 tools/perf/ui/browsers/hists.c   |  63 +-
 tools/perf/ui/gtk/hists.c|   6 +-
 tools/perf/ui/hist.c | 170 +
 tools/perf/ui/stdio/hist.c   |   8 +-
 tools/perf/util/hist.c   |  47 +--
 tools/perf/util/hist.h   |  65 +++---
 tools/perf/util/sort.c   | 205 +--
 14 files changed, 425 insertions(+), 236 deletions(-)


Re: [GIT PULL 00/29] perf/core improvements and fixes

2016-02-03 Thread Ingo Molnar

* Arnaldo Carvalho de Melo  wrote:

> Hi Ingo,
> 
>   Please consider pulling,
> 
> - Arnaldo
> 
> The following changes since commit 8eb22c984eb9eeaed47130f5679acd367af69678:
> 
>   Merge tag 'perf-core-for-mingo-3' of 
> git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core 
> (2016-02-03 11:02:37 +0100)
> 
> 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 b62e8dfcda8cb133c062c0e1207afea2476eb7fd:
> 
>   perf hists browser: Add 'L' hotkey to change percent limit (2016-02-03 
> 12:24:22 -0300)
> 
> 
> perf/core improvements and fixes:
> 
> New features:
> 
> - Add 'L' hotkey to dynamicly set the percent threshold for histogram
>   entries and callchains, i.e. dynamicly do what the --percent-limit
>   command line option to 'top' and 'report' does. (Namhyung Kim)
> 
> Infrastructure:
> 
> - Per hists field and sort lists, that will be used, for instance,
>   in the c2c tool (Jiri Olsa)
> 
> Documentation:
> 
> - Update documentation of --sort and --perf-limit options
>   for 'perf report' (Namhyung Kim)
> 
> Signed-off-by: Arnaldo Carvalho de Melo 
> 
> 
> Arnaldo Carvalho de Melo (1):
>   perf top: Move UI initialization ahead of sort setup
> 
> Jiri Olsa (25):
>   perf hists: Factor output_resort from hists__output_resort
>   perf hists: Introduce perf_evsel__output_resort function
>   perf hists: Add _idx fields into struct perf_hpp_fmt
>   perf hists: Use struct perf_hpp_fmt::idx in perf_hpp__reset_width
>   perf hists: Add 'equal' method to perf_hpp_fmt struct
>   perf hists: Add 'hpp__equal' callback function
>   perf hists: Make hpp setup function generic
>   perf report: Move UI initialization ahead of sort setup
>   perf hists: Allocate output sort field
>   perf hists: Remove perf_hpp__column_(disable|enable)
>   perf hists: Properly release format fields
>   perf hists: Separate sort fields parsing into setup_sort_list function
>   perf hists: Separate output fields parsing into setup_output_list 
> function
>   perf hists: Introduce struct perf_hpp_list
>   perf hists: Introduce perf_hpp_list__init function
>   perf hists: Add perf_hpp_list register helpers
>   perf hists: Pass perf_hpp_list all the way through setup_output_list
>   perf hists: Introduce perf_hpp_list__for_each_format macro
>   perf hists: Introduce perf_hpp_list__for_each_format_safe macro
>   perf hists: Introduce perf_hpp_list__for_each_sort_list macro
>   perf hists: Introduce perf_hpp_list__for_each_sort_list_safe macro
>   perf hists: Add struct perf_hpp_list argument to helper functions
>   perf tools: Add hpp_list into struct hists object
>   perf hists: Introduce hists__for_each_format macro
>   perf hists: Introduce hists__for_each_sort_list macro
> 
> Namhyung Kim (3):
>   perf report: Update documentation of --sort option
>   perf report: Update documention of --percent-limit option
>   perf hists browser: Add 'L' hotkey to change percent limit
> 
>  tools/perf/Documentation/perf-report.txt |  37 +++---
>  tools/perf/builtin-annotate.c|   2 +-
>  tools/perf/builtin-report.c  |  20 +--
>  tools/perf/builtin-top.c |  24 ++--
>  tools/perf/tests/hists_cumulate.c|   2 +-
>  tools/perf/tests/hists_filter.c  |   2 +-
>  tools/perf/tests/hists_output.c  |  10 +-
>  tools/perf/ui/browsers/hists.c   |  63 +-
>  tools/perf/ui/gtk/hists.c|   6 +-
>  tools/perf/ui/hist.c | 170 +
>  tools/perf/ui/stdio/hist.c   |   8 +-
>  tools/perf/util/hist.c   |  47 +--
>  tools/perf/util/hist.h   |  65 +++---
>  tools/perf/util/sort.c   | 205 
> +--
>  14 files changed, 425 insertions(+), 236 deletions(-)

Pulled, thanks a lot Arnaldo!

Ingo


[GIT PULL 00/29] perf/core improvements and fixes

2016-02-03 Thread Arnaldo Carvalho de Melo
Hi Ingo,

Please consider pulling,

- Arnaldo

The following changes since commit 8eb22c984eb9eeaed47130f5679acd367af69678:

  Merge tag 'perf-core-for-mingo-3' of 
git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core 
(2016-02-03 11:02:37 +0100)

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 b62e8dfcda8cb133c062c0e1207afea2476eb7fd:

  perf hists browser: Add 'L' hotkey to change percent limit (2016-02-03 
12:24:22 -0300)


perf/core improvements and fixes:

New features:

- Add 'L' hotkey to dynamicly set the percent threshold for histogram
  entries and callchains, i.e. dynamicly do what the --percent-limit
  command line option to 'top' and 'report' does. (Namhyung Kim)

Infrastructure:

- Per hists field and sort lists, that will be used, for instance,
  in the c2c tool (Jiri Olsa)

Documentation:

- Update documentation of --sort and --perf-limit options
  for 'perf report' (Namhyung Kim)

Signed-off-by: Arnaldo Carvalho de Melo 


Arnaldo Carvalho de Melo (1):
  perf top: Move UI initialization ahead of sort setup

Jiri Olsa (25):
  perf hists: Factor output_resort from hists__output_resort
  perf hists: Introduce perf_evsel__output_resort function
  perf hists: Add _idx fields into struct perf_hpp_fmt
  perf hists: Use struct perf_hpp_fmt::idx in perf_hpp__reset_width
  perf hists: Add 'equal' method to perf_hpp_fmt struct
  perf hists: Add 'hpp__equal' callback function
  perf hists: Make hpp setup function generic
  perf report: Move UI initialization ahead of sort setup
  perf hists: Allocate output sort field
  perf hists: Remove perf_hpp__column_(disable|enable)
  perf hists: Properly release format fields
  perf hists: Separate sort fields parsing into setup_sort_list function
  perf hists: Separate output fields parsing into setup_output_list function
  perf hists: Introduce struct perf_hpp_list
  perf hists: Introduce perf_hpp_list__init function
  perf hists: Add perf_hpp_list register helpers
  perf hists: Pass perf_hpp_list all the way through setup_output_list
  perf hists: Introduce perf_hpp_list__for_each_format macro
  perf hists: Introduce perf_hpp_list__for_each_format_safe macro
  perf hists: Introduce perf_hpp_list__for_each_sort_list macro
  perf hists: Introduce perf_hpp_list__for_each_sort_list_safe macro
  perf hists: Add struct perf_hpp_list argument to helper functions
  perf tools: Add hpp_list into struct hists object
  perf hists: Introduce hists__for_each_format macro
  perf hists: Introduce hists__for_each_sort_list macro

Namhyung Kim (3):
  perf report: Update documentation of --sort option
  perf report: Update documention of --percent-limit option
  perf hists browser: Add 'L' hotkey to change percent limit

 tools/perf/Documentation/perf-report.txt |  37 +++---
 tools/perf/builtin-annotate.c|   2 +-
 tools/perf/builtin-report.c  |  20 +--
 tools/perf/builtin-top.c |  24 ++--
 tools/perf/tests/hists_cumulate.c|   2 +-
 tools/perf/tests/hists_filter.c  |   2 +-
 tools/perf/tests/hists_output.c  |  10 +-
 tools/perf/ui/browsers/hists.c   |  63 +-
 tools/perf/ui/gtk/hists.c|   6 +-
 tools/perf/ui/hist.c | 170 +
 tools/perf/ui/stdio/hist.c   |   8 +-
 tools/perf/util/hist.c   |  47 +--
 tools/perf/util/hist.h   |  65 +++---
 tools/perf/util/sort.c   | 205 +--
 14 files changed, 425 insertions(+), 236 deletions(-)


Re: [GIT PULL 00/29] perf/core improvements and fixes

2013-11-05 Thread Ingo Molnar

* Ingo Molnar  wrote:

> Now it displays the spammy auto-detection all the time:
> 
> comet:~/tip/tools/perf> make
>   BUILD:   Doing 'make -j12' parallel build
> 
> Auto-detecting system features:
> ... backtrace: [ on  ]
> ... dwarf: [ on  ]
> ...fortify-source: [ on  ]
> ... glibc: [ on  ]
> ...  gtk2: [ on  ]
> ...  gtk2-infobar: [ on  ]
> ...  libaudit: [ on  ]
> ...libbfd: [ on  ]
> ...libelf: [ on  ]
> ... libelf-getphdrnum: [ on  ]
> ...   libelf-mmap: [ on  ]
> ...   libnuma: [ on  ]
> ...   libperl: [ on  ]
> ... libpython: [ on  ]
> ... libpython-version: [ on  ]
> ...  libslang: [ on  ]
> ... libunwind: [ on  ]
> ...   on-exit: [ on  ]
> ...stackprotector: [ on  ]
> ...stackprotector-all: [ on  ]
> 
> maybe a new testcase fails on my box, but is not properly displayed?

Hm, a 'make clean' cleaned up the condition and it now works as expected. 

So what happened is that GCC got upgraded from 4.8.1 to 4.8.2 and 
test-all.c failed to build:

  comet:~/tip/tools/perf/config/feature-checks> make -i
  make: *** No rule to make target 
`/usr/lib/gcc/x86_64-redhat-linux/4.8.1/include/limits.h', needed by 
`test-all'.  Stop.

but the individual testcases got built successfully and the perf build was 
fine and correct - it's just that the test-all.c .d file never got updated 
due to the broken dependency.

I think Namhyung warned about this during the feature-detection 
discussion, and I dismissed the concern - but Namhyung was right, it's a 
real problem.

I think to fix this we should automatically clean out potentially stale .d 
files automatically after testcase build failures (be it test-all.c or any 
other testcase)?

That would still preserve all the good roles of these dependencies and it 
would preserve the build speed and detection of system library changes.

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [GIT PULL 00/29] perf/core improvements and fixes

2013-11-05 Thread Ingo Molnar

* Ingo Molnar mi...@kernel.org wrote:

 Now it displays the spammy auto-detection all the time:
 
 comet:~/tip/tools/perf make
   BUILD:   Doing 'make -j12' parallel build
 
 Auto-detecting system features:
 ... backtrace: [ on  ]
 ... dwarf: [ on  ]
 ...fortify-source: [ on  ]
 ... glibc: [ on  ]
 ...  gtk2: [ on  ]
 ...  gtk2-infobar: [ on  ]
 ...  libaudit: [ on  ]
 ...libbfd: [ on  ]
 ...libelf: [ on  ]
 ... libelf-getphdrnum: [ on  ]
 ...   libelf-mmap: [ on  ]
 ...   libnuma: [ on  ]
 ...   libperl: [ on  ]
 ... libpython: [ on  ]
 ... libpython-version: [ on  ]
 ...  libslang: [ on  ]
 ... libunwind: [ on  ]
 ...   on-exit: [ on  ]
 ...stackprotector: [ on  ]
 ...stackprotector-all: [ on  ]
 
 maybe a new testcase fails on my box, but is not properly displayed?

Hm, a 'make clean' cleaned up the condition and it now works as expected. 

So what happened is that GCC got upgraded from 4.8.1 to 4.8.2 and 
test-all.c failed to build:

  comet:~/tip/tools/perf/config/feature-checks make -i
  make: *** No rule to make target 
`/usr/lib/gcc/x86_64-redhat-linux/4.8.1/include/limits.h', needed by 
`test-all'.  Stop.

but the individual testcases got built successfully and the perf build was 
fine and correct - it's just that the test-all.c .d file never got updated 
due to the broken dependency.

I think Namhyung warned about this during the feature-detection 
discussion, and I dismissed the concern - but Namhyung was right, it's a 
real problem.

I think to fix this we should automatically clean out potentially stale .d 
files automatically after testcase build failures (be it test-all.c or any 
other testcase)?

That would still preserve all the good roles of these dependencies and it 
would preserve the build speed and detection of system library changes.

Thanks,

Ingo
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [GIT PULL 00/29] perf/core improvements and fixes

2013-11-04 Thread Ingo Molnar

hm, probably one of these commits:

8a0c4c2843d3 perf tools: Fix libunwind build and feature detection for 32-bit 
build
28e962b9d79f perf tools: Fix 32-bit cross build
74af377bc25d perf tools: Fix non-debug build
9402802a416c perf tools: Fix test_on_exit for 32-bit build

broke the suppression of the auto-detection messages on repeat invocations 
of 'make', if all testcases pass.

'make' used to display this on repeat invocations:

 comet:~/tip/tools/perf> make
   BUILD:   Doing 'make -j12' parallel build
 comet:~/tip/tools/perf> make
   BUILD:   Doing 'make -j12' parallel build
 comet:~/tip/tools/perf> make
   BUILD:   Doing 'make -j12' parallel build

Now it displays the spammy auto-detection all the time:

comet:~/tip/tools/perf> make
  BUILD:   Doing 'make -j12' parallel build

Auto-detecting system features:
... backtrace: [ on  ]
... dwarf: [ on  ]
...fortify-source: [ on  ]
... glibc: [ on  ]
...  gtk2: [ on  ]
...  gtk2-infobar: [ on  ]
...  libaudit: [ on  ]
...libbfd: [ on  ]
...libelf: [ on  ]
... libelf-getphdrnum: [ on  ]
...   libelf-mmap: [ on  ]
...   libnuma: [ on  ]
...   libperl: [ on  ]
... libpython: [ on  ]
... libpython-version: [ on  ]
...  libslang: [ on  ]
... libunwind: [ on  ]
...   on-exit: [ on  ]
...stackprotector: [ on  ]
...stackprotector-all: [ on  ]

maybe a new testcase fails on my box, but is not properly displayed?

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [GIT PULL 00/29] perf/core improvements and fixes

2013-11-04 Thread Ingo Molnar

* Arnaldo Carvalho de Melo  wrote:

> From: Arnaldo Carvalho de Melo 
> 
> Hi Ingo,
> 
>   Please consider pulling,
> 
> - Arnaldo
> 
> The following changes since commit 46d525eae2a076adfde92dca1db12d9a3b8ad8bb:
> 
>   perf test: Update command line callchain attribute tests (2013-11-01 
> 10:42:57 -0300)
> 
> are available in the git repository at:
> 
>   git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux 
> tags/perf-urgent-for-mingo

I guess this wanted to be perf-core-for-mingo?

Pulled those bits, thanks Arnaldo!

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[GIT PULL 00/29] perf/core improvements and fixes

2013-11-04 Thread Arnaldo Carvalho de Melo
From: Arnaldo Carvalho de Melo 

Hi Ingo,

Please consider pulling,

- Arnaldo

The following changes since commit 46d525eae2a076adfde92dca1db12d9a3b8ad8bb:

  perf test: Update command line callchain attribute tests (2013-11-01 10:42:57 
-0300)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux 
tags/perf-urgent-for-mingo

for you to fetch changes up to 46d525eae2a076adfde92dca1db12d9a3b8ad8bb:

  perf test: Update command line callchain attribute tests (2013-11-01 10:42:57 
-0300)


perf/urgent fixes:

. Fix command line callchain attribute tests to handle the new
  -g/--call-chain semantics.

. Remove cast of non-variadic function to variadic, fixing perf output
  on armhf arch. Fix from Michael Hudson-Doyle.

. Fix 32-bit building of 'perf bench', from Wei Yang.

Signed-off-by: Arnaldo Carvalho de Melo 


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[GIT PULL 00/29] perf/core improvements and fixes

2013-11-04 Thread Arnaldo Carvalho de Melo
From: Arnaldo Carvalho de Melo a...@ghostprotocols.net

Hi Ingo,

Please consider pulling,

- Arnaldo

The following changes since commit 46d525eae2a076adfde92dca1db12d9a3b8ad8bb:

  perf test: Update command line callchain attribute tests (2013-11-01 10:42:57 
-0300)

are available in the git repository at:

  git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux 
tags/perf-urgent-for-mingo

for you to fetch changes up to 46d525eae2a076adfde92dca1db12d9a3b8ad8bb:

  perf test: Update command line callchain attribute tests (2013-11-01 10:42:57 
-0300)


perf/urgent fixes:

. Fix command line callchain attribute tests to handle the new
  -g/--call-chain semantics.

. Remove cast of non-variadic function to variadic, fixing perf output
  on armhf arch. Fix from Michael Hudson-Doyle.

. Fix 32-bit building of 'perf bench', from Wei Yang.

Signed-off-by: Arnaldo Carvalho de Melo a...@redhat.com


--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [GIT PULL 00/29] perf/core improvements and fixes

2013-11-04 Thread Ingo Molnar

* Arnaldo Carvalho de Melo a...@infradead.org wrote:

 From: Arnaldo Carvalho de Melo a...@ghostprotocols.net
 
 Hi Ingo,
 
   Please consider pulling,
 
 - Arnaldo
 
 The following changes since commit 46d525eae2a076adfde92dca1db12d9a3b8ad8bb:
 
   perf test: Update command line callchain attribute tests (2013-11-01 
 10:42:57 -0300)
 
 are available in the git repository at:
 
   git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux 
 tags/perf-urgent-for-mingo

I guess this wanted to be perf-core-for-mingo?

Pulled those bits, thanks Arnaldo!

Ingo
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [GIT PULL 00/29] perf/core improvements and fixes

2013-11-04 Thread Ingo Molnar

hm, probably one of these commits:

8a0c4c2843d3 perf tools: Fix libunwind build and feature detection for 32-bit 
build
28e962b9d79f perf tools: Fix 32-bit cross build
74af377bc25d perf tools: Fix non-debug build
9402802a416c perf tools: Fix test_on_exit for 32-bit build

broke the suppression of the auto-detection messages on repeat invocations 
of 'make', if all testcases pass.

'make' used to display this on repeat invocations:

 comet:~/tip/tools/perf make
   BUILD:   Doing 'make -j12' parallel build
 comet:~/tip/tools/perf make
   BUILD:   Doing 'make -j12' parallel build
 comet:~/tip/tools/perf make
   BUILD:   Doing 'make -j12' parallel build

Now it displays the spammy auto-detection all the time:

comet:~/tip/tools/perf make
  BUILD:   Doing 'make -j12' parallel build

Auto-detecting system features:
... backtrace: [ on  ]
... dwarf: [ on  ]
...fortify-source: [ on  ]
... glibc: [ on  ]
...  gtk2: [ on  ]
...  gtk2-infobar: [ on  ]
...  libaudit: [ on  ]
...libbfd: [ on  ]
...libelf: [ on  ]
... libelf-getphdrnum: [ on  ]
...   libelf-mmap: [ on  ]
...   libnuma: [ on  ]
...   libperl: [ on  ]
... libpython: [ on  ]
... libpython-version: [ on  ]
...  libslang: [ on  ]
... libunwind: [ on  ]
...   on-exit: [ on  ]
...stackprotector: [ on  ]
...stackprotector-all: [ on  ]

maybe a new testcase fails on my box, but is not properly displayed?

Thanks,

Ingo
--
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/