lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Sun, 24 Apr 2016 23:28:09 -0700
From:	kan.liang@...el.com
To:	acme@...nel.org
Cc:	namhyung@...nel.org, jolsa@...nel.org, ak@...ux.intel.com,
	linux-kernel@...r.kernel.org, Kan Liang <kan.liang@...el.com>
Subject: [PATCH V3 1/1] perf hists: clear dummy entry accumulated period

From: Kan Liang <kan.liang@...el.com>

The accumulated period for dummy entry should also be 0.
Otherwise, the total overhead could be overcounted.
[perf]$ perf record -e '{LLC-load-misses,cpu/instructions/}'
--call-graph=lbr ./tchain
[perf]$ 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.liang@...el.com>
---

Changes since V2:
 - Use symbol_conf.cumulate_callchain check for existance of he->stat_acc 
Changes since V1:
 - check he->stat_acc. Because it only be available when option children is set

 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);
-- 
2.5.0

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ