Subject: perf report broken for branch stack samples

From: Anshuman Khandual <[email-masked]>
Date: Wed, 01 Apr 2015 14:32:54 +0530

Hello,

perf report is not showing up the branch stack sample results in the
from_symbol ---> to_symbol format even if the perf.data 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 perf.data 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 <[email-masked]>
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 <[email-masked]>
    Cc: Jiri Olsa <[email-masked]>
    Cc: Namhyung Kim <[email-masked]>
    Link: http://lkml.kernel.org/r/[email-masked]
    Signed-off-by: Arnaldo Carvalho de Melo <[email-masked]>

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.

Regards
Anshuman