diff options
author | Steven Rostedt (Google) <rostedt@goodmis.org> | 2022-03-04 01:05:32 +0300 |
---|---|---|
committer | Steven Rostedt (Google) <rostedt@goodmis.org> | 2022-03-11 19:48:43 +0300 |
commit | 953c2f052112a857c00058a641dc0c58ec7551d4 (patch) | |
tree | 4113cdf34d6e167cee72debf067e54716584e89a /samples/Kconfig | |
parent | 8bcd06632b73291e8734f46084ed04f4106b840a (diff) | |
download | linux-953c2f052112a857c00058a641dc0c58ec7551d4.tar.xz |
tracing: Add sample code for custom trace events
Add sample code to show how to create custom trace events in the tracefs
directory that can be enabled and modified like any event in tracefs
(including triggers, histograms, synthetic events and event probes).
The example is creating a custom sched_switch and a sched_waking to limit
what is recorded:
If the custom sched switch only records the prev_prio, next_prio and
next_pid, it can bring the size from 64 bytes per event, down to just 16
bytes!
If sched_waking only records the prio and pid of the woken event, it will
bring the size down from 36 bytes to 12 bytes per event.
This will allow for a much smaller footprint into the ring buffer and keep
more events from dropping.
Link: https://lkml.kernel.org/r/20220303220625.369226746@goodmis.org
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Tom Zanussi <zanussi@kernel.org>
Suggested-by: Joel Fernandes <joel@joelfernandes.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Diffstat (limited to 'samples/Kconfig')
-rw-r--r-- | samples/Kconfig | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/samples/Kconfig b/samples/Kconfig index 22cc921ae291..10e021c72282 100644 --- a/samples/Kconfig +++ b/samples/Kconfig @@ -14,7 +14,13 @@ config SAMPLE_TRACE_EVENTS tristate "Build trace_events examples -- loadable modules only" depends on EVENT_TRACING && m help - This build trace event example modules. + This builds the trace event example module. + +config SAMPLE_TRACE_CUSTOM_EVENTS + tristate "Build custom trace event example -- loadable modules only" + depends on EVENT_TRACING && m + help + This builds the custom trace event example module. config SAMPLE_TRACE_PRINTK tristate "Build trace_printk module - tests various trace_printk formats" |