Hi,

This is my second attempt to support event group on perf report.
For basic idea and usage example, please see my original post [1].

The main difference than v1 is adding HEADER_GROUP_DESC feature and
use it for regenerating group relationship on perf report.  It will
save actual (i.e. contains non-leader member) group information to
perf header.

Patch 1 is a bug fix which can be applied indenpedently.

Patch 2-4 are cleanups to facilitate later changes and came from my
cumulative report series [2].

You can also access it via my tree at:

git://git.kernel.org/pub/scm/linux/kernel/git/namhyung/linux-perf.git  
perf/group-v2

Any comments are welcome, thanks,
Namhyung

v1 -> v2:
 * save group relation to header (Jiri)
 * rebase on top of current acme/perf/core


[1] https://lkml.org/lkml/2012/7/24/81
[2] https://lkml.org/lkml/2012/9/13/81

Namhyung Kim (16):
  perf hists: Add missing period_* fields when collapsing a hist entry
  perf hists: Introduce struct he_stat
  perf hists: Move he->stat.nr_events initialization to a template
  perf hists: Add more helpers for hist entry stat
  perf tools: Keep group information
  perf evlist: Add perf_evlist__recalc_nr_groups
  perf header: Add HEADER_GROUP_DESC feature
  perf hists: Collapse group hist_entries to a leader
  perf hists: Maintain total periods of group members in the leader
  perf report: Make another loop for output resorting
  perf ui/hist: Add support for event group view
  perf ui/browser: Add support for event group view
  perf ui/gtk: Add support for event group view
  perf report: Bypass non-leader events when event group is enabled
  perf report: Show group description when event group is enabled
  perf report: Add --group option

 tools/perf/builtin-record.c    |   6 ++
 tools/perf/builtin-report.c    |  29 +++++++
 tools/perf/ui/browsers/hists.c | 107 ++++++++++++++++++++---
 tools/perf/ui/gtk/browser.c    |  70 ++++++++++++---
 tools/perf/ui/hist.c           | 104 +++++++++++++++++------
 tools/perf/ui/stdio/hist.c     |   4 +-
 tools/perf/util/evlist.c       |  26 +++++-
 tools/perf/util/evlist.h       |   2 +
 tools/perf/util/evsel.c        |  25 ++++++
 tools/perf/util/evsel.h        |  23 +++++
 tools/perf/util/header.c       | 149 ++++++++++++++++++++++++++++++++
 tools/perf/util/header.h       |   2 +
 tools/perf/util/hist.c         | 188 +++++++++++++++++++++++++++++++++++------
 tools/perf/util/hist.h         |   2 +
 tools/perf/util/parse-events.c |   1 +
 tools/perf/util/parse-events.h |   1 +
 tools/perf/util/parse-events.y |   4 +
 tools/perf/util/sort.h         |  17 ++--
 tools/perf/util/symbol.c       |   4 +
 tools/perf/util/symbol.h       |   3 +-
 20 files changed, 683 insertions(+), 84 deletions(-)

-- 
1.7.11.4

--
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/

Reply via email to