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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:

> From: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
> 
> Hi Ingo,
> 
> 	Please consider pulling,
> 
> - Arnaldo
> 
> Test results at the end of this message, as usual.
> 
> The following changes since commit 7869e5889477e4e32e4024d665431b35e8b7b693:
> 
>   Merge remote-tracking branch 'tip/perf/urgent' into perf/core (2018-06-04 10:28:20 -0300)
> 
> 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.18-20180605
> 
> for you to fetch changes up to 03ac4e71cd120d2c3411d106d00d266114575f74:
> 
>   perf intel-pt: Fix "Unexpected indirect branch" error (2018-06-05 12:28:52 -0300)
> 
> ----------------------------------------------------------------
> perf/core improvements and fixes:
> 
> perf stat:
> 
> . Display user and system time for workload targets (Jiri Olsa)
> 
> perf record:
> 
> . Enable arbitrary event names thru name= modifier (Alexey Budankov)
> 
> PowerPC:
> 
> . Add a python script for hypervisor call statistics (Ravi Bangoria)
> 
> Intel PT: (Adrian Hunter)
> 
> . Fix sync_switch INTEL_PT_SS_NOT_TRACING
> 
> . Fix decoding to accept CBR between FUP and corresponding TIP
> 
> . Fix MTC timing after overflow
> 
> . Fix "Unexpected indirect branch" error
> 
> perf test:
> 
> . record+probe_libc_inet_pton:
> 
>   .  To get the symbol table for dynamic
>      shared objects on ubuntu we need to pass the -D/--dynamic command line
>      option, unlike with the fedora distros (Arnaldo Carvalho de Melo)
> 
> . code-reading:
> 
>   . Fix perf_env setup for PTI entry trampolines (Adrian Hunter)
> 
> . kmod-path:
> 
>   . Add tests for vdso32 and vdsox32 (Adrian Hunter)
> 
> . Use header file util/debug.h (Thomas Richter)
> 
> perf annotate:
> 
> . Make the various UI backends (stdio, TUI, gtk) use more consistently
>   structs with annotation options as specified by the user (Arnaldo Carvalho de Melo)
> 
> . Move annotation specific knobs from the symbol_conf global kitchen
>   sink to the annotation option structs (Arnaldo Carvalho de Melo)
> 
> Core:
> 
> . Fix misleading error for some unparsable events mentioning PMUs when
>   those are not involved in the problem (Jiri Olsa)
> 
> - Fix symbol and object code resolution for vdso32 and vdsox32 (Adrian Hunter)
> 
> . No need to check for null when passing pointers to foo__get() style
>   refcount grabbing helpers, just like in the kernel and with free(),
>   its safe to pass a NULL pointer to avoid having to check it before
>   each and every foo__get() call (Arnaldo Carvalho de Melo)
> 
> . Remove some dead code (quote.[ch]) (Arnaldo Carvalho de Melo)
> 
> . Remove some needless globals, making them local (Arnaldo Carvalho de Melo)
> 
> . Reduce usage of symbol_conf.use_callchain, using other means of
>   finding out if callchains are in use or available for specific events,
>   as we evolved this codebase to allow requesting callchains for just
>   a subset of the monitored events. In time it will help polish
>   recording and showing mixed sets accross the various tools:
> 
>     perf record -e cycles/call-graph=fp/,cache-misses/call-graph=dwarf/,instructions
> 
>   (Arnaldo Carvalho de Melo)
> 
> . Consider PTI entry trampolines in map__rip_2objdump() (Adrian Hunter)
> 
> Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>
> 
> ----------------------------------------------------------------
> Adrian Hunter (8):
>       perf tests kmod-path: Add tests for vdso32 and vdsox32
>       perf tools: Fix symbol and object code resolution for vdso32 and vdsox32
>       perf test code-reading: Fix perf_env setup for PTI entry trampolines
>       perf map: Consider PTI entry trampolines in rip_2objdump()
>       perf intel-pt: Fix sync_switch INTEL_PT_SS_NOT_TRACING
>       perf intel-pt: Fix decoding to accept CBR between FUP and corresponding TIP
>       perf intel-pt: Fix MTC timing after overflow
>       perf intel-pt: Fix "Unexpected indirect branch" error
> 
> Alexey Budankov (1):
>       perf record: Enable arbitrary event names thru name= modifier
> 
> Arnaldo Carvalho de Melo (33):
>       perf tools: Remove dead quote.[ch] code
>       perf probe: Use return of map__get() to make code more compact
>       perf cgroup: Make evlist__find_cgroup() more compact
>       perf tools: No need to check if the argument to __get() function is NULL
>       perf annotate: Pass perf_evsel instead of just evsel->idx
>       perf annotate: __symbol__acount_cycles doesn't need notes
>       perf annotate: Split allocation of annotated_source struct
>       perf annotate: Introduce constructor/destructor for annotated_source
>       perf annotate: Introduce annotated_source__alloc_histograms
>       perf annotate: __symbol__inc_addr_samples() needs just annotated_source
>       perf annotate: Introduce symbol__hists()
>       perf annotate: Introduce symbol__cycle_hists()
>       perf annotate: Stop using symbol_conf.nr_events global in symbol__hists()
>       perf annotate: Replace symbol__alloc_hists() with symbol__hists()
>       perf tools: Ditch the symbol_conf.nr_events global
>       perf annotate: Add comment about annotated_src->nr_histograms
>       perf annotate stdio: Use annotation_options consistently
>       perf srcline: Introduce map__srcline() to make code more compact
>       perf sort: Introduce addr_map_symbol__srcline() to make code more compact
>       perf srcline: Make hist_entry srcline helper consistent with map's
>       perf annotate: Pass annotation_options to symbol__annotate()
>       perf annotate: Adopt anotation options from symbol_conf
>       perf annotate: Move disassembler_style global to annotation_options
>       perf hists browser: Pass annotation_options from tool to browser
>       perf annotate: Move objdump_path to struct annotation_options
>       perf report: No need to have report_callchain_help as a global
>       perf evsel: Add has_callchain() helper to make code more compact/clear
>       perf script: Check if evsel has callchains before trying to use it
>       perf sched: Use sched->show_callchain where appropriate
>       perf hists: Do not allocate space for callchains for evsels without them
>       perf hists: Introduce hist_entry__has_callchain() method
>       perf hists: Check if a hist_entry has callchains before using them
>       perf test record+probe_libc_inet_pton: Ask 'nm' for dynamic symbols
> 
> Jiri Olsa (2):
>       perf stat: Display user and system time
>       perf tools: Fix pmu events parsing rule
> 
> Ravi Bangoria (1):
>       perf script powerpc: Python script for hypervisor call statistics
> 
> Thomas Richter (1):
>       perf test: Use header file util/debug.h
> 
>  tools/perf/Documentation/perf-list.txt             |   6 +-
>  tools/perf/Documentation/perf-record.txt           |   3 +
>  tools/perf/Documentation/perf-stat.txt             |  40 +++--
>  tools/perf/arch/common.c                           |   4 +-
>  tools/perf/arch/common.h                           |   4 +-
>  tools/perf/builtin-annotate.c                      |  36 ++--
>  tools/perf/builtin-c2c.c                           |   2 +-
>  tools/perf/builtin-kvm.c                           |   2 -
>  tools/perf/builtin-probe.c                         |   3 +-
>  tools/perf/builtin-report.c                        |  39 ++--
>  tools/perf/builtin-sched.c                         |  14 +-
>  tools/perf/builtin-script.c                        |  12 +-
>  tools/perf/builtin-stat.c                          |  28 ++-
>  tools/perf/builtin-top.c                           |  48 +++--
>  tools/perf/builtin-trace.c                         |   2 +-
>  tools/perf/perf.c                                  |   1 -
>  .../perf/scripts/python/bin/powerpc-hcalls-record  |   2 +
>  .../perf/scripts/python/bin/powerpc-hcalls-report  |   2 +
>  tools/perf/scripts/python/powerpc-hcalls.py        | 200 +++++++++++++++++++++
>  tools/perf/tests/code-reading.c                    |   1 +
>  tools/perf/tests/kmod-path.c                       |  16 ++
>  tools/perf/tests/parse-events.c                    |   4 +-
>  tools/perf/tests/python-use.c                      |   3 +-
>  .../tests/shell/record+probe_libc_inet_pton.sh     |   2 +-
>  tools/perf/ui/browsers/annotate.c                  |  21 ++-
>  tools/perf/ui/browsers/hists.c                     |  43 +++--
>  tools/perf/ui/browsers/hists.h                     |   3 +
>  tools/perf/ui/gtk/annotate.c                       |   2 +-
>  tools/perf/ui/gtk/hists.c                          |   5 +-
>  tools/perf/ui/hist.c                               |   2 +-
>  tools/perf/ui/stdio/hist.c                         |   4 +-
>  tools/perf/util/Build                              |   1 -
>  tools/perf/util/annotate.c                         | 160 ++++++++++-------
>  tools/perf/util/annotate.h                         |  53 ++++--
>  tools/perf/util/cgroup.c                           |   9 +-
>  tools/perf/util/dso.c                              |   2 +
>  tools/perf/util/evsel.c                            |   4 +-
>  tools/perf/util/evsel.h                            |   5 +
>  tools/perf/util/header.c                           |  24 ++-
>  tools/perf/util/hist.c                             |  23 ++-
>  tools/perf/util/hist.h                             |  26 ++-
>  .../perf/util/intel-pt-decoder/intel-pt-decoder.c  |  23 ++-
>  .../perf/util/intel-pt-decoder/intel-pt-decoder.h  |   9 +
>  tools/perf/util/intel-pt.c                         |   5 +
>  tools/perf/util/map.c                              |  26 ++-
>  tools/perf/util/map.h                              |   1 +
>  tools/perf/util/parse-events.l                     |  18 +-
>  tools/perf/util/parse-events.y                     |  14 +-
>  tools/perf/util/probe-event.c                      |   3 +-
>  tools/perf/util/quote.c                            |  62 -------
>  tools/perf/util/quote.h                            |  31 ----
>  tools/perf/util/session.c                          |   2 +-
>  tools/perf/util/sort.c                             |  81 +++------
>  tools/perf/util/sort.h                             |   7 +-
>  tools/perf/util/symbol.c                           |   1 -
>  tools/perf/util/symbol.h                           |   3 -
>  tools/perf/util/top.h                              |   3 +-
>  57 files changed, 731 insertions(+), 419 deletions(-)
>  create mode 100644 tools/perf/scripts/python/bin/powerpc-hcalls-record
>  create mode 100644 tools/perf/scripts/python/bin/powerpc-hcalls-report
>  create mode 100644 tools/perf/scripts/python/powerpc-hcalls.py
>  delete mode 100644 tools/perf/util/quote.c
>  delete mode 100644 tools/perf/util/quote.h

Pulled, thanks a lot Arnaldo!

	Ingo



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux