]> git.baikalelectronics.ru Git - kernel.git/commit
perf tools: Introduce struct hist_entry_iter
authorNamhyung Kim <namhyung@kernel.org>
Wed, 30 Oct 2013 00:40:34 +0000 (09:40 +0900)
committerJiri Olsa <jolsa@kernel.org>
Sun, 1 Jun 2014 12:34:55 +0000 (14:34 +0200)
commit252a6917dd075a044f2d95d2af6d32894e30bce6
tree0d1bf258aa9a06c23981ea9220fe5360d1280ed1
parentff43b943c13362f4971da6c3a508b52f68694590
perf tools: Introduce struct hist_entry_iter

There're some duplicate code when adding hist entries.  They are
different in that some have branch info or mem info but generally do
same thing.  So introduce new struct hist_entry_iter and add callbacks
to customize each case in general way.

The new perf_evsel__add_entry() function will look like:

  iter->prepare_entry();
  iter->add_single_entry();

  while (iter->next_entry())
    iter->add_next_entry();

  iter->finish_entry();

This will help further work like the cumulative callchain patchset.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Tested-by: Arun Sharma <asharma@fb.com>
Tested-by: Rodrigo Campos <rodrigo@sdfg.com.ar>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lkml.kernel.org/r/1401335910-16832-3-git-send-email-namhyung@kernel.org
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
tools/perf/builtin-report.c
tools/perf/tests/hists_filter.c
tools/perf/tests/hists_output.c
tools/perf/util/hist.c
tools/perf/util/hist.h