lkml.org 
[lkml]   [2015]   [Aug]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v1 4/4] perf script: enable printing of branch stack
From
On Wed, Aug 19, 2015 at 3:11 PM, Andi Kleen <ak@linux.intel.com> wrote:
> On Wed, Aug 19, 2015 at 10:38:26AM +0200, Stephane Eranian wrote:
>> This patch improves perf script by enabling printing of the
>> branch stack via the 'brstack' argument to the field selection
>> option -F. The option is off by default and operates only if the
>> perf.data file has branch stack content.
>
> Thanks that's very useful. I wanted that several times.
>>
>> +static void print_sample_brstack(union perf_event *event __maybe_unused,
>> + struct perf_sample *sample,
>> + struct thread *thread __maybe_unused,
>> + struct perf_event_attr *attr __maybe_unused)
>> +{
>> + struct branch_stack *br = sample->branch_stack;
>> + u64 i;
>> +
>> + if (!(br && br->nr))
>> + return;
>> +
>> + for (i = 0; i < br->nr; i++) {
>> + printf(" 0x%"PRIx64"/0x%"PRIx64" ", br->entries[i].from, br->entries[i].to);
>
> Should print the various flags too. Also tip just added cycles information.
>
Ok, I will add that in v2.

> Also it would be good to resolve the addresses to symbol + offset

But then, that becomes harder to post-process or even read with long
C++ signatures.

> (and perhaps have support for srcline too).
>
>
> -Andi
> --
> ak@linux.intel.com -- Speaking for myself only


\
 
 \ /
  Last update: 2015-08-20 02:41    [W:0.075 / U:0.040 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site