perf report broken for branch stack samples

From: Anshuman Khandual
Date: Wed Apr 01 2015 - 05:03:30 EST


perf report is not showing up the branch stack sample results in the
from_symbol ---> to_symbol format even if the file has got
the samples (through 'perf record -b <workload>' session). Perf report
still displays the generic event based relative symbol classification
as usual. This problem can also be seen on X86. I wonder whether there
is any semantics change in the way perf report auto detects branch stack
samples in the file and reports in the intended format. After
doing a git bisect session, this following commit seems to have changed
the perf report behavior.

commit fa94c36c29ed8bb4749b5fd7ea51a593f673dcef
Author: Andi Kleen <ak@xxxxxxxxxxxxxxx>
Date: Wed Nov 12 18:05:22 2014 -0800

perf report: Add --branch-history option

Add a --branch-history option to perf report that changes all the
settings necessary for using the branches in callstacks.

This is just a short cut to make this nicer to use, it does not enable
any functionality by itself.

v2: Change sort order. Rename option to --branch-history to
be less confusing.
v3: Updates
v4: Fix conflict with newer perf base
v5: Port to latest tip
v6: Add more comments. Remove CCKEY_ADDRESS setting. Remove
unnecessary branch_mode setting. Use a boolean.

Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
Cc: Jiri Olsa <jolsa@xxxxxxxxxx>
Cc: Namhyung Kim <namhyung@xxxxxxxxxx>
Signed-off-by: Arnaldo Carvalho de Melo <acme@xxxxxxxxxx>

I dont have much context of this change but it seems to be using branch
records along with call chain data (provided you have used both -b/-j
and -g option during perf record) to display better control flow graph ?
But then if we have just used -b and not -g then it should still give us
the previous output what we used to get.


To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at