Skip to content
  • Steven Rostedt's avatar
    ftrace: add filter select functions to trace · 5072c59f
    Steven Rostedt authored
    
    
    This patch adds two files to the debugfs system:
    
     /debugfs/tracing/available_filter_functions
    
    and
    
     /debugfs/tracing/set_ftrace_filter
    
    The available_filter_functions lists all functions that has been
    recorded by the ftraced that has called the ftrace_record_ip function.
    This is to allow users to see what functions have been converted
    to nops and can be enabled for tracing.
    
    To enable functions, simply echo the names (whitespace delimited)
    into set_ftrace_filter. Simple wildcards are also allowed.
    
    echo 'scheduler' > /debugfs/tracing/set_ftrace_filter
    
    Will have only the scheduler be activated when tracing is enabled.
    
    echo 'sched_*' > /debugfs/tracing/set_ftrace_filter
    
    Will have only the functions starting with 'sched_' be activated.
    
    echo '*lock' > /debugfs/tracing/set_ftrace_filter
    
    Will have only functions ending with 'lock' be activated.
    
    echo '*lock*' > /debugfs/tracing/set_ftrace_filter
    
    Will have only functions with 'lock' in its name be activated.
    
    Note: 'sched*lock' will not work. The only wildcards that are
    allowed is an asterisk and the beginning and or end of the string
    passed in.
    
    Multiple names can be passed in with whitespace delimited:
    
    echo 'scheduler *lock *acpi*' > /debugfs/tracing/set_ftrace_filter
    
    is also the same as:
    
    echo 'scheduler' > /debugfs/tracing/set_ftrace_filter
    echo '*lock' >> /debugfs/tracing/set_ftrace_filter
    echo '*acpi*' >> /debugfs/tracing/set_ftrace_filter
    
    Appending does just that. It appends to the list.
    
    To disable all filters simply echo an empty line in:
    
    echo > /debugfs/tracing/set_ftrace_filter
    
    Signed-off-by: default avatarSteven Rostedt <srostedt@redhat.com>
    Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
    Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
    5072c59f