All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-kernel@vger.kernel.org, Namhyung Kim <namhyung@kernel.org>,
	Andi Kleen <andi@firstfloor.org>, David Ahern <dsahern@gmail.com>,
	Frederic Weisbecker <fweisbec@gmail.com>,
	Jiri Olsa <jolsa@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Wang Nan <wangnan0@huawei.com>,
	Arnaldo Carvalho de Melo <acme@redhat.com>
Subject: [PATCH 01/10] perf hists: Fix min callchain hits calculation
Date: Mon,  1 Feb 2016 18:49:10 -0300	[thread overview]
Message-ID: <1454363359-27435-2-git-send-email-acme@kernel.org> (raw)
In-Reply-To: <1454363359-27435-1-git-send-email-acme@kernel.org>

See http://www.infradead.org/rpr.html

From: Namhyung Kim <namhyung@kernel.org>

The total period should be get using hists__total_period() since it
takes filtered entries into account.  In addition, if callchain mode is
'fractal', the total period should be the entry's period.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Cc: Andi Kleen <andi@firstfloor.org>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/r/1453909257-26015-2-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/util/hist.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

diff --git a/tools/perf/util/hist.c b/tools/perf/util/hist.c
index 81ce0aff69d1..b96194676c91 100644
--- a/tools/perf/util/hist.c
+++ b/tools/perf/util/hist.c
@@ -1163,9 +1163,18 @@ static void __hists__insert_output_entry(struct rb_root *entries,
 	struct rb_node *parent = NULL;
 	struct hist_entry *iter;
 
-	if (use_callchain)
+	if (use_callchain) {
+		if (callchain_param.mode == CHAIN_GRAPH_REL) {
+			u64 total = he->stat.period;
+
+			if (symbol_conf.cumulate_callchain)
+				total = he->stat_acc->period;
+
+			min_callchain_hits = total * (callchain_param.min_percent / 100);
+		}
 		callchain_param.sort(&he->sorted_chain, he->callchain,
 				      min_callchain_hits, &callchain_param);
+	}
 
 	while (*p != NULL) {
 		parent = *p;
@@ -1195,7 +1204,7 @@ void hists__output_resort(struct hists *hists, struct ui_progress *prog)
 	else
 		use_callchain = symbol_conf.use_callchain;
 
-	min_callchain_hits = hists->stats.total_period * (callchain_param.min_percent / 100);
+	min_callchain_hits = hists__total_period(hists) * (callchain_param.min_percent / 100);
 
 	if (sort__need_collapse)
 		root = &hists->entries_collapsed;
-- 
2.5.0

  reply	other threads:[~2016-02-01 21:49 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-01 21:49 [GIT PULL 00/10] perf/core callchains improvements and fixes Arnaldo Carvalho de Melo
2016-02-01 21:49 ` Arnaldo Carvalho de Melo [this message]
2016-02-01 21:49 ` [PATCH 02/10] perf hists: Update hists' total period when adding entries Arnaldo Carvalho de Melo
2016-02-01 21:49 ` [PATCH 03/10] perf report: Apply --percent-limit to callchains also Arnaldo Carvalho de Melo
2016-02-01 21:49 ` [PATCH 04/10] perf report: Get rid of hist_entry__callchain_fprintf() Arnaldo Carvalho de Melo
2016-02-01 21:49 ` [PATCH 05/10] perf callchain: Pass parent_samples to __callchain__fprintf_graph() Arnaldo Carvalho de Melo
2016-02-01 21:49 ` [PATCH 06/10] perf report: Fix percent display in callchains on --stdio Arnaldo Carvalho de Melo
2016-02-01 21:49 ` [PATCH 07/10] perf hists browser: Fix dump to show correct callchain style Arnaldo Carvalho de Melo
2016-02-01 21:49 ` [PATCH 08/10] perf hists browser: Pass parent_total to callchain print functions Arnaldo Carvalho de Melo
2016-02-01 21:49 ` [PATCH 09/10] perf hists browser: Fix percent display in callchains Arnaldo Carvalho de Melo
2016-02-01 21:49 ` [PATCH 10/10] perf report: Don't show blank lines if entry has no callchain Arnaldo Carvalho de Melo
2016-02-03 10:04 ` [GIT PULL 00/10] perf/core callchains improvements and fixes Ingo Molnar
  -- strict thread matches above, loose matches on Subject: below --
2016-01-27 15:40 [PATCHSET 00/10] perf tools: Apply percent-limit to callchains (v2) Namhyung Kim
2016-01-27 15:40 ` [PATCH 01/10] perf hists: Fix min callchain hits calculation Namhyung Kim

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1454363359-27435-2-git-send-email-acme@kernel.org \
    --to=acme@kernel.org \
    --cc=acme@redhat.com \
    --cc=andi@firstfloor.org \
    --cc=dsahern@gmail.com \
    --cc=fweisbec@gmail.com \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=namhyung@kernel.org \
    --cc=peterz@infradead.org \
    --cc=wangnan0@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.