lkml.org 
[lkml]   [2012]   [Apr]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [tip:perf/core] perf ui annotate browser: Allow toggling addr offset view
    On Fri, Apr 13, 2012 at 11:07 AM, tip-bot for Arnaldo Carvalho de Melo
    <acme@redhat.com> wrote:
    >
    > The offset view will be the default as soon as operations that deal with
    > offsets in a function are handled accodringly, i.e. in offset view the
    > above will become:
    >
    >     2f:       jne    __list_del_entry+0x84
    > <SNIP>
    >     84:       mov    %rdi,%rcx

    Oh, please please please make this happen.

    Also, if at all possible, please mark offsets that are referenced by a
    branch some way. I do think that the "size of instruction" can be a
    very valid piece of information when looking at instruction-level
    profiles, but quite frankly, I'm also 100% sure that the fact that an
    instruction is a branch target is *more* important.

    Now, fancy arrows etc might be too hard to do (especially without
    cluttering things up too much), but marking just the targets would
    already be lovely. IOW, turn this mess:


    : ffffffff810d7e80 <kmem_cache_free>:
    1.91 : ffffffff810d7e80: push %rbp
    0.05 : ffffffff810d7e81: mov %rsp,%rbp
    2.02 : ffffffff810d7e84: push %r12
    0.00 : ffffffff810d7e86: mov %rdi,%r12
    0.55 : ffffffff810d7e89: push %rbx
    0.00 : ffffffff810d7e8a: mov %rsi,%rdi
    1.20 : ffffffff810d7e8d: mov %rsi,%rbx
    1.64 : ffffffff810d7e90: callq ffffffff8102a730 <__phys_addr>
    0.05 : ffffffff810d7e95: movabs $0xffffea0000000000,%rdi
    0.22 : ffffffff810d7e9f: shr $0xc,%rax
    0.11 : ffffffff810d7ea3: shl $0x6,%rax
    1.64 : ffffffff810d7ea7: lea (%rax,%rdi,1),%rdi
    42.80 : ffffffff810d7eab: mov (%rdi),%rax
    2.02 : ffffffff810d7eae: test $0x80,%ah
    0.00 : ffffffff810d7eb1: jne ffffffff810d7ef6
    <kmem_cache_free+0x76>
    0.22 : ffffffff810d7eb3: mov 0x8(%rbp),%r9
    7.14 : ffffffff810d7eb7: mov (%r12),%rax
    0.65 : ffffffff810d7ebb: add %gs:0xcb88,%rax
    4.58 : ffffffff810d7ec4: mov 0x8(%rax),%rdx

    (which has tons of unnecessary white-space too - shades of G+) into

    <kmem_cache_free>:
    1.91 : push %rbp
    0.05 : mov %rsp,%rbp
    2.02 : push %r12
    0.00 : mov %rdi,%r12
    0.55 : push %rbx
    0.00 : mov %rsi,%rdi
    1.20 : mov %rsi,%rbx
    1.64 : callq ffffffff8102a730 <__phys_addr>
    0.05 : movabs $0xffffea0000000000,%rdi
    0.22 : shr $0xc,%rax
    0.11 : shl $0x6,%rax
    1.64 : lea (%rax,%rdi,1),%rdi
    42.80 : mov (%rdi),%rax
    2.02 : test $0x80,%ah
    0.00 : jne kmem_cache_free+0x76
    0.22 : 0x33: mov 0x8(%rbp),%r9
    7.14 : 0x37: mov (%r12),%rax
    0.65 : add %gs:0xcb88,%rax
    4.58 : mov 0x8(%rax),%rdx
    ....

    or something. I think the "callq ffffffff8102a730 <__phys_addr>"
    could also be prettified with *zero* downside.

    Sure, leave some magic keycombination to get the "full information", but ..

    Linus
    --
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2012-04-13 20:29    [W:0.027 / U:35.944 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site