mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [GIT PULL 00/15] perf/core improvements
@ 2016-04-15 21:50 Arnaldo Carvalho de Melo
  2016-04-15 21:50 ` [PATCH 01/15] perf trace: Move socket_type beautifier to tools/perf/trace/beauty/ Arnaldo Carvalho de Melo
                   ` (15 more replies)
  0 siblings, 16 replies; 17+ messages in thread
From: Arnaldo Carvalho de Melo @ 2016-04-15 21:50 UTC (permalink / raw)
  To: Ingo Molnar
  Cc: linux-kernel, Arnaldo Carvalho de Melo, Adrian Hunter,
	David Ahern, Frederic Weisbecker, Jiri Olsa, Milian Wolff,
	Namhyung Kim, Wang Nan, Arnaldo Carvalho de Melo

Hi Ingo,

	Please consider pulling,

- Arnaldo

The following changes since commit 0b22cd276cec21107d9d69453fa58abba73e71df:

  Merge tag 'perf-core-for-mingo-20160414' of git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux into perf/core (2016-04-14 15:30:59 +0200)

are available in the git repository at:

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

for you to fetch changes up to f3e459d16a8493b617ccf2a940330279679e0291:

  perf trace: Bump --mmap-pages when --call-graph is used by the root user (2016-04-15 17:52:34 -0300)

----------------------------------------------------------------
perf/core improvements:

User visible:

- Wire the callchain unwinding "max-stack" know to 'perf script --max-stack',
  allowing to limit the depth of callchains, possibly reducing processing
  time (Arnaldo Carvalho de Melo)

- Ditto for 'perf trace --max-stack' (Arnaldo Carvalho de Melo)

- Introduce a --min-stack filter for 'perf trace', to show syscalls that
  had a userspace callchain leading to it at least min-stack deep (Arnaldo Carvalho de Melo)

- Make 'perf trace' work with multiple threads and the --duration filter,
  i.e. do not print the start of an interrupted syscall followed by ...
  to print interrupts from other threads, as we need to wait the sys_exit
  syscall tracepoint to calculate the duration, duh. (Arnaldo Carvalho de Melo)

  System wide --duration now works as expected:

   [root@jouet ~]# trace --duration 100
     152.393 (145.147 ms): Timer/24358 futex(uaddr: 0x7f5ed98e56cc, op: WAIT_BITSET|PRIV|CLKRT, val: 7055125, utime: 0x7f5ecdbfec30, val3: 4294967295) = -1 ETIMEDOUT Connection timed out
     152.438 (145.040 ms): firefox/24321 poll(ufds: 0x7f5ec388b460, nfds: 6, timeout_msecs: 4294967295) = 1
     358.580 (158.279 ms): Xorg/2025 select(n: 512, inp: 0x83a8e0, tvp: 0x7ffdcbb63610) = 0 Timeout
     358.687 (148.285 ms): gnome-terminal/2711 poll(ufds: 0x55b7e6811ad0, nfds: 15, timeout_msecs: 249) = 1
     370.150 (169.569 ms): gnome-shell/2287 poll(ufds: 0x55e623d65490, nfds: 86, timeout_msecs: 4294967295) = 1

- Now 'perf trace's --max-stack and --min-stack will automatically set
  "--call-graph dwarf", if --call-graph is not present on the command line:

   [root@jouet ~]# perf trace -e nanosleep --max-stack 3 usleep 1
     0.299 ( 0.057 ms): usleep/29658 nanosleep(rqtp: 0x7fff80f3b230) = 0
                                       __nanosleep+0x10 (/usr/lib64/libc-2.22.so)
                                       usleep+0x34 (/usr/lib64/libc-2.22.so)
                                       main+0x1eb (/usr/bin/usleep)
   [root@jouet ~]#

- Bump 'perf trace --mmap-pages' for root when using callchains and not
  specifying --mmap-pages explicitely (Arnaldo Carvalho de Melo)

Build fixes:

- The python binding object had missing symbols, to some refactoring
  to fix that (Arnaldo Carvalho de Melo)

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>

----------------------------------------------------------------
Arnaldo Carvalho de Melo (15):
      perf trace: Move socket_type beautifier to tools/perf/trace/beauty/
      perf callchain: Start moving away from global per thread cursors
      perf evsel: Remove symbol_conf usage
      perf symbols: Move fprintf routines to separate object file
      perf evsel: Require that callchains be resolved before calling fprintf_{sym,callchain}
      perf tools: Remove addr_location argument to sample__fprintf_callchain
      perf script: Add --max-stack knob
      perf trace: Add --max-stack knob
      perf evsel: Move fprintf methods to separate source file
      perf trace: Do not print interrupted syscalls when using --duration
      perf trace: Introduce --min-stack filter
      perf record: Export record_opts based callchain parsing helper
      perf trace: Make --(min,max}-stack imply "--call-graph dwarf"
      perf evlist: Expose perf_event_mlock_kb_in_pages() helper
      perf trace: Bump --mmap-pages when --call-graph is used by the root user

 tools/perf/Documentation/perf-script.txt           |  10 +
 tools/perf/Documentation/perf-trace.txt            |  23 +++
 tools/perf/builtin-kmem.c                          |   2 +-
 tools/perf/builtin-record.c                        |  35 ++--
 tools/perf/builtin-script.c                        |  39 ++--
 tools/perf/builtin-trace.c                         | 144 +++++++-------
 tools/perf/trace/beauty/socket_type.c              |  60 ++++++
 tools/perf/util/Build                              |   2 +
 tools/perf/util/callchain.c                        |   5 +-
 tools/perf/util/callchain.h                        |   9 +-
 tools/perf/util/evlist.c                           |  42 ++--
 tools/perf/util/evlist.h                           |   2 +
 tools/perf/util/evsel.c                            | 220 ---------------------
 tools/perf/util/evsel.h                            |  19 +-
 tools/perf/util/evsel_fprintf.c                    | 212 ++++++++++++++++++++
 tools/perf/util/hist.c                             |   2 +-
 tools/perf/util/machine.c                          |  26 +--
 tools/perf/util/machine.h                          |   4 +
 tools/perf/util/python-ext-sources                 |   1 +
 .../perf/util/scripting-engines/trace-event-perl.c |   2 +-
 .../util/scripting-engines/trace-event-python.c    |   2 +-
 tools/perf/util/symbol.c                           |  71 -------
 tools/perf/util/symbol.h                           |   5 +
 tools/perf/util/symbol_fprintf.c                   |  71 +++++++
 24 files changed, 565 insertions(+), 443 deletions(-)
 create mode 100644 tools/perf/trace/beauty/socket_type.c
 create mode 100644 tools/perf/util/evsel_fprintf.c
 create mode 100644 tools/perf/util/symbol_fprintf.c

^ permalink raw reply	[flat|nested] 17+ messages in thread

end of thread, other threads:[~2016-04-16  9:12 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-04-15 21:50 [GIT PULL 00/15] perf/core improvements Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 01/15] perf trace: Move socket_type beautifier to tools/perf/trace/beauty/ Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 02/15] perf callchain: Start moving away from global per thread cursors Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 03/15] perf evsel: Remove symbol_conf usage Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 04/15] perf symbols: Move fprintf routines to separate object file Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 05/15] perf evsel: Require that callchains be resolved before calling fprintf_{sym,callchain} Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 06/15] perf tools: Remove addr_location argument to sample__fprintf_callchain Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 07/15] perf script: Add --max-stack knob Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 08/15] perf trace: " Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 09/15] perf evsel: Move fprintf methods to separate source file Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 10/15] perf trace: Do not print interrupted syscalls when using --duration Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 11/15] perf trace: Introduce --min-stack filter Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 12/15] perf record: Export record_opts based callchain parsing helper Arnaldo Carvalho de Melo
2016-04-15 21:50 ` [PATCH 13/15] perf trace: Make --(min,max}-stack imply "--call-graph dwarf" Arnaldo Carvalho de Melo
2016-04-15 21:51 ` [PATCH 14/15] perf evlist: Expose perf_event_mlock_kb_in_pages() helper Arnaldo Carvalho de Melo
2016-04-15 21:51 ` [PATCH 15/15] perf trace: Bump --mmap-pages when --call-graph is used by the root user Arnaldo Carvalho de Melo
2016-04-16  9:12 ` [GIT PULL 00/15] perf/core improvements Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®