Commit-ID:  09623d79466e996f5dc2753e16f04fda6f078041
Gitweb:     http://git.kernel.org/tip/09623d79466e996f5dc2753e16f04fda6f078041
Author:     Kan Liang <kan.li...@intel.com>
AuthorDate: Sun, 24 Apr 2016 23:28:09 -0700
Committer:  Arnaldo Carvalho de Melo <a...@redhat.com>
CommitDate: Mon, 25 Apr 2016 20:35:59 -0300

perf hists: Clear dummy entry accumulated period

The accumulated period for dummy entry should also be 0.  Otherwise, the
total overhead could be overcounted.

  $ perf record -e '{LLC-load-misses,cpu/instructions/}' --call-graph=lbr 
./tchain
  $ perf report --stdio
  # To display the perf.data header info, please use --header/--header-only 
options.
  #
  # Total Lost Samples: 0
  #
  # Samples: 21K of event 'anon group { LLC-load-misses, cpu/instructions/ }'
  # Event count (approx.): 16313667937
  #
  #         Children              Self  Command      Shared Object     Symbol
  # ................  ................  ...........  ................  
............................
  #
    4769.98%   0.01%     0.00%   0.01%  tchain_edit  [kernel.vmlinux]  [k] 
update_fast_timekeeper
    4356.18%   0.01%     0.00%   0.01%  tchain_edit  [kernel.vmlinux]  [k] 
trigger_load_balance
    3181.12%   0.01%     0.00%   0.01%  tchain_edit  [kernel.vmlinux]  [k] 
irq_work_tick
    1592.37%   0.00%     0.00%   0.00%  tchain_edit  [kernel.vmlinux]  [k] 
cpu_needs_another_gp

Signed-off-by: Kan Liang <kan.li...@intel.com>
Acked-by: Jiri Olsa <jo...@kernel.org>
Cc: Andi Kleen <a...@linux.intel.com>
Cc: Namhyung Kim <namhy...@kernel.org>
Link: 
http://lkml.kernel.org/r/1461565689-5862-1-git-send-email-kan.li...@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com>
---
 tools/perf/util/hist.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c
index 991a351..0f33d7e 100644
--- a/tools/perf/util/hist.c
+++ b/tools/perf/util/hist.c
@@ -2062,6 +2062,8 @@ static struct hist_entry *hists__add_dummy_entry(struct 
hists *hists,
        if (he) {
                memset(&he->stat, 0, sizeof(he->stat));
                he->hists = hists;
+               if (symbol_conf.cumulate_callchain)
+                       memset(he->stat_acc, 0, sizeof(he->stat));
                rb_link_node(&he->rb_node_in, parent, p);
                rb_insert_color(&he->rb_node_in, root);
                hists__inc_stats(hists, he);

Reply via email to