# Call Graph Tracing

WAR STORY: Call graph tracing http://sourceware.org/systemtap/wiki/WSCallGraph?highlight=((WarStories)) script: http://sourceware.org/systemtap/examples/general/para-callgraph.stp

This section describes how to trace incoming and outgoing function calls.

para-callgraph.stp

takes two command-line arguments:

- The function/s whose entry/exit call you'd like to trace (`$1`).

- A second optional trigger function (`$2`), which enables or disables tracing on a per-thread basis. Tracing in each thread will continue as long as the trigger function has not exited yet.

please verify previous if correct; i'm particularly interested in finding out how to better describe "trigger function"

uses `thread_indent()`; as such, its output contains the timestamp, process name, and thread ID of `$1` (i.e. the probe function you are tracing). For more information about `thread_indent()`, refer to its entry in .

The following example contains an excerpt from the output for `stap para-callgraph.stp 'kernel.function("*@fs/*.c")' 'kernel.function("sys_read")'`:

Sample Output

    [...]
       267 gnome-terminal(2921): <-do_sync_read return=0xfffffffffffffff5
       269 gnome-terminal(2921):<-vfs_read return=0xfffffffffffffff5
         0 gnome-terminal(2921):->fput file=0xffff880111eebbc0
         2 gnome-terminal(2921):<-fput
         0 gnome-terminal(2921):->fget_light fd=0x3 fput_needed=0xffff88010544df54
         3 gnome-terminal(2921):<-fget_light return=0xffff8801116ce980
         0 gnome-terminal(2921):->vfs_read file=0xffff8801116ce980 buf=0xc86504 count=0x1000 pos=0xffff88010544df48
         4 gnome-terminal(2921): ->rw_verify_area read_write=0x0 file=0xffff8801116ce980 ppos=0xffff88010544df48 count=0x1000
         7 gnome-terminal(2921): <-rw_verify_area return=0x1000
        12 gnome-terminal(2921): ->do_sync_read filp=0xffff8801116ce980 buf=0xc86504 len=0x1000 ppos=0xffff88010544df48
        15 gnome-terminal(2921): <-do_sync_read return=0xfffffffffffffff5
        18 gnome-terminal(2921):<-vfs_read return=0xfffffffffffffff5
         0 gnome-terminal(2921):->fput file=0xffff8801116ce980

script examples call graph tracing
examples of SystemTap scripts call graph tracing
call graph tracing examples of SystemTap scripts
incoming/outgoing function calls, tracing examples of SystemTap scripts
function calls (incoming/outgoing), tracing examples of SystemTap scripts
tracing incoming/outgoing function calls examples of SystemTap scripts
tracing call graph examples of SystemTap scripts
script examples multiple command-line arguments, example of
examples of SystemTap scripts multiple command-line arguments, example of
multiple command-line arguments, example of examples of SystemTap scripts
example of multiple command-line arguments examples of SystemTap scripts
script examples trigger function
examples of SystemTap scripts trigger function
trigger function examples of SystemTap scripts
script examples thread_indent(), sample usage
examples of SystemTap scripts thread_indent(), sample usage
thread_indent(), sample usage examples of SystemTap scripts