linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@infradead.org>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-kernel@vger.kernel.org, Namhyung Kim <namhyung.kim@lge.com>,
	Namhyung Kim <namhyung@kernel.org>,
	Paul Mackerras <paulus@samba.org>,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Arnaldo Carvalho de Melo <acme@redhat.com>
Subject: [PATCH 08/18] perf report: Enable integrated annotation only if possible
Date: Mon, 17 Sep 2012 14:18:02 -0300	[thread overview]
Message-ID: <1347902292-14536-9-git-send-email-acme@infradead.org> (raw)
In-Reply-To: <1347902292-14536-1-git-send-email-acme@infradead.org>

From: Namhyung Kim <namhyung.kim@lge.com>

The integrated annotation feature is supported only in TUI mode.  Also
it should be enabled with 'symbol' sort key otherwise resulting hist
entry doesn't need to have same symbol as of a sample so that it can
fail on hist_entry__inc_addr_samples with -ERANGE.

You can easily see it when start perf report TUI without symbol* sort
key.  This patch fixes the problem.

Signed-off-by: Namhyung Kim <namhyung@kernel.org>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1347611729-16994-2-git-send-email-namhyung@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/builtin-report.c |   12 ++++++------
 1 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index 97b2e63..b6696dd 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -93,7 +93,7 @@ static int perf_report__add_branch_hist_entry(struct perf_tool *tool,
 			struct annotation *notes;
 			err = -ENOMEM;
 			bx = he->branch_info;
-			if (bx->from.sym && use_browser > 0) {
+			if (bx->from.sym && use_browser == 1 && sort__has_sym) {
 				notes = symbol__annotation(bx->from.sym);
 				if (!notes->src
 				    && symbol__alloc_hist(bx->from.sym) < 0)
@@ -107,7 +107,7 @@ static int perf_report__add_branch_hist_entry(struct perf_tool *tool,
 					goto out;
 			}
 
-			if (bx->to.sym && use_browser > 0) {
+			if (bx->to.sym && use_browser == 1 && sort__has_sym) {
 				notes = symbol__annotation(bx->to.sym);
 				if (!notes->src
 				    && symbol__alloc_hist(bx->to.sym) < 0)
@@ -162,7 +162,7 @@ static int perf_evsel__add_hist_entry(struct perf_evsel *evsel,
 	 * so we don't allocated the extra space needed because the stdio
 	 * code will not use it.
 	 */
-	if (he->ms.sym != NULL && use_browser > 0) {
+	if (he->ms.sym != NULL && use_browser == 1 && sort__has_sym) {
 		struct annotation *notes = symbol__annotation(he->ms.sym);
 
 		assert(evsel != NULL);
@@ -692,12 +692,14 @@ int cmd_report(int argc, const char **argv, const char *prefix __maybe_unused)
 	else
 		use_browser = 0;
 
+	setup_sorting(report_usage, options);
+
 	/*
 	 * Only in the newt browser we are doing integrated annotation,
 	 * so don't allocate extra space that won't be used in the stdio
 	 * implementation.
 	 */
-	if (use_browser > 0) {
+	if (use_browser == 1 && sort__has_sym) {
 		symbol_conf.priv_size = sizeof(struct annotation);
 		report.annotate_init  = symbol__annotate_init;
 		/*
@@ -720,8 +722,6 @@ int cmd_report(int argc, const char **argv, const char *prefix __maybe_unused)
 	if (symbol__init() < 0)
 		goto error;
 
-	setup_sorting(report_usage, options);
-
 	if (parent_pattern != default_parent_pattern) {
 		if (sort_dimension__add("parent") < 0)
 			goto error;
-- 
1.7.1


  parent reply	other threads:[~2012-09-17 17:24 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1347902292-14536-1-git-send-email-acme@infradead.org>
2012-09-17 17:17 ` [PATCH 01/18] perf probe: Add union member access support Arnaldo Carvalho de Melo
2012-09-17 17:17 ` [PATCH 02/18] perf test: Fixup for the die() removal Arnaldo Carvalho de Melo
2012-09-17 17:17 ` [PATCH 03/18] perf sched: " Arnaldo Carvalho de Melo
2012-09-17 17:17 ` [PATCH 04/18] tools lib traceevent: Define _GNU_SOURCE in Makefile Arnaldo Carvalho de Melo
2012-09-17 17:17 ` [PATCH 05/18] perf hists browser: Fix output for 100.00% Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 06/18] perf hists browser: Fix first column printing Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 07/18] perf tools: Add sort__has_sym Arnaldo Carvalho de Melo
2012-09-17 17:18 ` Arnaldo Carvalho de Melo [this message]
2012-09-17 17:18 ` [PATCH 09/18] perf stat: Move stats related code to util/stat.c Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 10/18] perf archive: Remove -f from the rm command Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 11/18] perf archive: Make 'f' the last parameter for tar Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 12/18] perf symbols: Filter samples with unresolved symbol when "--symbols" option is used Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 13/18] perf scripts: Add --symbols option to handle specific symbols Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 14/18] perf scripts: Add event_analyzing_sample-record/report Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 15/18] perf scripts: Export a find_scripts() function Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 16/18] perf report: Add missing perf_hpp__init for pipe-mode Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 17/18] perf/x86: Add cpumask for uncore pmu Arnaldo Carvalho de Melo
2012-09-17 17:18 ` [PATCH 18/18] perf stat: Check PMU cpumask file Arnaldo Carvalho de Melo

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=1347902292-14536-9-git-send-email-acme@infradead.org \
    --to=acme@infradead.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=namhyung.kim@lge.com \
    --cc=namhyung@kernel.org \
    --cc=paulus@samba.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).