diff options
author | Tom Zanussi <tom.zanussi@linux.intel.com> | 2013-10-24 15:59:28 +0200 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2013-12-22 04:02:16 +0100 |
commit | 7862ad1846e994574cb47dc503cc2b1646ea6593 (patch) | |
tree | cec348fd60d6f85d1ae772996d0b8241a31d5b35 /kernel/trace/trace.h | |
parent | tracing: Add 'stacktrace' event trigger command (diff) | |
download | linux-7862ad1846e994574cb47dc503cc2b1646ea6593.tar.xz linux-7862ad1846e994574cb47dc503cc2b1646ea6593.zip |
tracing: Add 'enable_event' and 'disable_event' event trigger commands
Add 'enable_event' and 'disable_event' event_command commands.
enable_event and disable_event event triggers are added by the user
via these commands in a similar way and using practically the same
syntax as the analagous 'enable_event' and 'disable_event' ftrace
function commands, but instead of writing to the set_ftrace_filter
file, the enable_event and disable_event triggers are written to the
per-event 'trigger' files:
echo 'enable_event:system:event' > .../othersys/otherevent/trigger
echo 'disable_event:system:event' > .../othersys/otherevent/trigger
The above commands will enable or disable the 'system:event' trace
events whenever the othersys:otherevent events are hit.
This also adds a 'count' version that limits the number of times the
command will be invoked:
echo 'enable_event:system:event:N' > .../othersys/otherevent/trigger
echo 'disable_event:system:event:N' > .../othersys/otherevent/trigger
Where N is the number of times the command will be invoked.
The above commands will will enable or disable the 'system:event'
trace events whenever the othersys:otherevent events are hit, but only
N times.
This also makes the find_event_file() helper function extern, since
it's useful to use from other places, such as the event triggers code,
so make it accessible.
Link: http://lkml.kernel.org/r/f825f3048c3f6b026ee37ae5825f9fc373451828.1382622043.git.tom.zanussi@linux.intel.com
Signed-off-by: Tom Zanussi <tom.zanussi@linux.intel.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/trace.h')
-rw-r--r-- | kernel/trace/trace.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/kernel/trace/trace.h b/kernel/trace/trace.h index 50723e5e2b3c..ccbd8104cf99 100644 --- a/kernel/trace/trace.h +++ b/kernel/trace/trace.h @@ -1028,6 +1028,10 @@ extern void trace_event_enable_cmd_record(bool enable); extern int event_trace_add_tracer(struct dentry *parent, struct trace_array *tr); extern int event_trace_del_tracer(struct trace_array *tr); +extern struct ftrace_event_file *find_event_file(struct trace_array *tr, + const char *system, + const char *event); + static inline void *event_file_data(struct file *filp) { return ACCESS_ONCE(file_inode(filp)->i_private); |