• Ingo Molnar's avatar
    perf record/report: Add call graph / call chain profiling · 3efa1cc9
    Ingo Molnar authored
    Add the first steps of call-graph profiling:
    
     - add the -c (--call-graph) option to perf record
     - parse the call-graph record and printout out under -D (--dump-trace)
    
    The call-graph data is not put into the histogram yet, but it
    can be seen that it's being processed correctly:
    
    0x3ce0 [0x38]: event: 35
    .
    . ... raw event: size 56 bytes
    .  0000:  23 00 00 00 05 00 38 00 d4 df 0e 81 ff ff ff ff  #.....8........
    .  0010:  60 0b 00 00 60 0b 00 00 03 00 00 00 01 00 02 00  `...`..........
    .  0020:  d4 df 0e 81 ff ff ff ff a0 61 ed 41 36 00 00 00  .........a.A6..
    .  0030:  04 92 e6 41 36 00 00 00                          .a.A6..
    .
    0x3ce0 [0x38]: PERF_EVENT (IP, 5): 2912: 0xffffffff810edfd4 period: 1
    ... chain: u:2, k:1, nr:3
    .....  0: 0xffffffff810edfd4
    .....  1: 0x3641ed61a0
    .....  2: 0x3641e69204
     ... thread: perf:2912
     ...... dso: [kernel]
    
    This shows a 3-entry call-graph: with 1 kernel-space and two user-space
    entries
    
    Cc: Frederic Weisbecker <fweisbec@gmail.com>
    Cc: Pekka Enberg <penberg@cs.helsinki.fi>
    Cc: Arjan van de Ven <arjan@infradead.org>
    Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
    Cc: Mike Galbraith <efault@gmx.de>
    Cc: Paul Mackerras <paulus@samba.org>
    Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
    LKML-Reference: <new-submission>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    3efa1cc9
builtin-report.c 26.7 KB