Re: [GIT PULL 00/29] perf/core improvements and fixes
* 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
* 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
* Arnaldo Carvalho de Melowrote: > 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
* 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
* 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
* Arnaldo Carvalho de Melowrote: > 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
* 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
* 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
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
* 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
* 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
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/