twx-linux/samples
Steven Rostedt (Google) f568fbe8c6 tracing: Allow creating instances with specified system events
[ Upstream commit d23569979ca1cd139a42c410e0c7b9e6014c3b3a ]

A trace instance may only need to enable specific events. As the eventfs
directory of an instance currently creates all events which adds overhead,
allow internal instances to be created with just the events in systems
that they care about. This currently only deals with systems and not
individual events, but this should bring down the overhead of creating
instances for specific use cases quite bit.

The trace_array_get_by_name() now has another parameter "systems". This
parameter is a const string pointer of a comma/space separated list of
event systems that should be created by the trace_array. (Note if the
trace_array already exists, this parameter is ignored).

The list of systems is saved and if a module is loaded, its events will
not be added unless the system for those events also match the systems
string.

Link: https://lore.kernel.org/linux-trace-kernel/20231213093701.03fddec0@gandalf.local.home

Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Cc: Sean Paul <seanpaul@chromium.org>
Cc: Arun Easi   <aeasi@marvell.com>
Cc: Daniel Wagner <dwagner@suse.de>
Tested-by: Dmytro Maluka <dmaluka@chromium.org>
Signed-off-by: Steven Rostedt (Google) <rostedt@goodmis.org>
Stable-dep-of: 0b4ffbe4888a ("tracing: Correct the refcount if the hist/hist_debug file fails to open")
Signed-off-by: Sasha Levin <sashal@kernel.org>
2025-04-10 14:37:41 +02:00
..
acrn
auxdisplay
binderfs
bpf samples/bpf: Fix a resource leak 2024-12-14 20:00:03 +01:00
configfs
connector
coresight
fanotify
fprobe fprobe: Pass return address to the handlers 2023-06-06 21:39:55 +09:00
ftrace tracing: Allow creating instances with specified system events 2025-04-10 14:37:41 +02:00
hid bpf: Replace deprecated -target with --target= for Clang 2023-06-29 15:46:17 +02:00
hidraw
hw_breakpoint samples/hw_breakpoint: mark sample_hbp as static 2023-07-26 11:17:19 -07:00
kdb
kfifo
kmemleak kmemleak-test: drop __init to get better backtrace 2023-06-09 16:25:40 -07:00
kobject
kprobes
landlock samples/landlock: Fix possible NULL dereference in parse_path() 2025-02-08 09:51:57 +01:00
livepatch
mei
nitro_enclaves
pfsm samples: Add userspace example for TI TPS6594 PFSM 2023-06-15 13:41:53 +02:00
pidfd
pktgen samples: pktgen: correct dev to DEV 2024-11-22 15:38:32 +01:00
qmi
rpmsg
rust
seccomp
timers
trace_events
trace_printk
uhid
user_events
v4l
vfio-mdev vfio/mtty: Overhaul mtty interrupt handling 2024-01-10 17:16:55 +01:00
vfs
watch_queue
watchdog
Kconfig vfio-dev/mdpy-fb: Use fbdev I/O helpers 2023-08-04 15:54:39 +02:00
Makefile samples: Add userspace example for TI TPS6594 PFSM 2023-06-15 13:41:53 +02:00