Hi Arnaldo,

On Tue, 6 Nov 2012 17:52:21 -0300, Arnaldo Carvalho de Melo wrote:
> Em Mon, Nov 05, 2012 at 02:50:47PM +0100, Stephane Eranian escreveu:
> [root@sandy acme]# perf mem -t load rep --stdio 
> --sort=symbol,symbol_daddr,cost
> # Samples: 30  of event 'cpu/mem-loads/pp'
> # Total cost : 640
> # Sort order : symbol,symbol_daddr,cost
> #
> # Overhead      Samples                  Symbol             Data Symbol     
> Cost
> # ........  ...........  ......................  ......................  
> .......
> #
>     55.00%            1  [k] lookup_fast         [k] 0xffff8803b7521bd4      
> 352
>      5.47%            1  [k] cache_alloc_refill  [k] 0xffff880407705024       
> 35
>      3.44%            1  [k] cache_alloc_refill  [k] 0xffff88041d8527d8       
> 22
>      3.28%            1  [k] run_timer_softirq   [k] 0xffff88041e2c3e90       
> 21
>      2.50%            1  [k] __list_add          [k] 0xffff8803b7521d68       
> 16
>      2.19%            1  [.] __strcoll_l         [.] 0x00007fffa8d44080       
> 14
>      1.88%            1  [.] __strcoll_l         [.] 0x00007fffa8d44104       
> 12
>
> If we go to the annotation browser to see where is that lookup_fast hitting 
> we get:
>
> 100.00 │       mov    -0x34(%rbp),%eax
>
> How to map 0xffff8803b7521bd4 to a stack variable, struct members and all?
>
> Humm, for userspace we have PERF_SAMPLE_REGS_USER for the dwarf unwinder we
> need for userspace, but what about reverse mapping of kernel variables? Jiri?

I suspect there aren't much thing we can do on stack.  One thing we can
do is adding dso_daddr to sort key and seeing it's a [stack] (or
[stack:tid]) or not.  But not sure it can be done for kernel stacks too.

Thanks,
Namhyung
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to