• Josh Triplett's avatar
    tracing: Add vim script to enable folding for function_graph traces · 6591b493
    Josh Triplett authored
    function_graph traces look like nested function calls, complete with
    braces denoting the start and end of functions.  function-graph-fold.vim
    teaches vim how to fold these functions, to make it more convenient to
    browse them.
    
    To use, :source function-graph-fold.vim while viewing a function_graph
    trace, or use "view -S function-graph-fold.vim some-trace" to load it
    from the command-line together with a trace.  You can then use the usual
    vim fold commands, such as "za", to open and close nested functions.
    While closed, a fold will show the total time taken for a call, as would
    normally appear on the line with the closing brace.  Folded functions
    will not include finish_task_switch(), so folding should remain
    relatively sane even through a context switch.
    
    Note that this will almost certainly only work well with a single-CPU
    trace (e.g. trace-cmd report --cpu 1).  It also takes some time to run
    (a few seconds for a large trace on my laptop).  Nevertheless, I found
    it very handy to get an overview of a trace and then drill down on
    problematic calls.
    Signed-off-by: default avatarJosh Triplett <josh@joshtriplett.org>
    LKML-Reference: <20090806145701.GB7661@feather>
    Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    6591b493
function-graph-fold.vim 1.32 KB