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  

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  

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

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


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


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/


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/