All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] perf report: Fix branch stack mode cannot be set
@ 2015-02-15  2:33 He Kuang
  2015-02-27  9:58 ` He Kuang
  2015-02-28  9:35 ` [tip:perf/core] " tip-bot for He Kuang
  0 siblings, 2 replies; 4+ messages in thread
From: He Kuang @ 2015-02-15  2:33 UTC (permalink / raw)
  To: a.p.zijlstra, paulus, mingo, acme; +Cc: wangnan0, linux-kernel

When perf.data file be abtained by using 'perf record -b', perf report
should use branch stack mode to generate output. But this function is
broken by improper comparison between boolean and constant -1.

before this patch:
$perf report -b -i perf.data
Samples: 16  of event 'cycles', Event count (approx.): 3171896
Overhead  Command  Shared Object      Symbol
  13.59%  ls       [kernel.kallsyms]  [k] prio_tree_remove
  13.16%  ls       [kernel.kallsyms]  [k] change_pte_range
  12.09%  ls       [kernel.kallsyms]  [k] page_fault
  12.02%  ls       [kernel.kallsyms]  [k] zap_pte_range
...

after this patch:
$perf report -b -i perf.data
Samples: 256  of event 'cycles', Event count (approx.): 256
Overhead  Command  Source Shared Object  Source Symbol                               Target Shared Object  Target Symbol
   9.38%  ls       [unknown]             [k] 0000000000000000                        [unknown]             [k] 0000000000000000
   6.25%  ls       libc-2.19.so          [.] _dl_addr                                libc-2.19.so          [.] _dl_addr
   6.25%  ls       [kernel.kallsyms]     [k] zap_pte_range                           [kernel.kallsyms]     [k] zap_pte_range
   6.25%  ls       [kernel.kallsyms]     [k] change_pte_range                        [kernel.kallsyms]     [k] change_pte_range
   0.39%  ls       [kernel.kallsyms]     [k] prio_tree_remove                        [kernel.kallsyms]     [k] prio_tree_remove
...

Signed-off-by: He Kuang <hekuang@huawei.com>
---
 tools/perf/builtin-report.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/builtin-report.c b/tools/perf/builtin-report.c
index 2f91094..ecc453b 100644
--- a/tools/perf/builtin-report.c
+++ b/tools/perf/builtin-report.c
@@ -766,7 +766,7 @@ repeat:
 	 * 0/1 means the user chose a mode.
 	 */
 	if (((branch_mode == -1 && has_br_stack) || branch_mode == 1) &&
-	    branch_call_mode == -1) {
+	    !branch_call_mode) {
 		sort__mode = SORT_MODE__BRANCH;
 		symbol_conf.cumulate_callchain = false;
 	}
-- 
2.2.0.33.gc18b867


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-02-28  9:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-02-15  2:33 [PATCH] perf report: Fix branch stack mode cannot be set He Kuang
2015-02-27  9:58 ` He Kuang
2015-02-27 16:31   ` Arnaldo Carvalho de Melo
2015-02-28  9:35 ` [tip:perf/core] " tip-bot for He Kuang

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.