[PATCH 0/3] tracing: Remove eventfs_files by use of callbacks

From: Steven Rostedt
Date: Tue Sep 12 2023 - 23:00:06 EST


The first patch adds a file to tracefs that shows all the event_files
that have been allocated for the dynamic eventfs file system. It also
shows the dentries that were created and their current ref counts. This
is useful for debugging and knowing when a dentry has been created and
freed.

I was suppose to add the first patch to this merge window. As it
is an aid for debugging, I may push it still in my next pull request.

The second patch is a bit of a redesign of the way the eventfs is
created. It no longer creates a descriptor representing every file but
instead just the directories. These descriptors get an array of
entries that represent the files within it (but not for sub directories).
Each entry has a name and a callback, where the name is the name of the
file (used for lookup) and a callback that is used to create the dentry
and inode for the file. This saves more memory, this approach may
be possible to create a dynamic way of doing this for other pseudo file
systems.

The third patch fixes the kprobe selftests yet again, and the function
that it uses to attach to was renamed once again.

Changes since v1: https://lore.kernel.org/all/20230801001349.520930329@xxxxxxxxxxx/

- Rebased on mainline and some minor clean ups.
- Fixed kprobe selftest

Steven Rostedt (Google) (3):
tracefs: Add show_events_dentries
eventfs: Remove eventfs_file and just use eventfs_inode
tracing/selftests: Update kprobe args char/string to match new functions

----
fs/tracefs/Makefile | 1 +
fs/tracefs/event_inode.c | 809 ++++++++++-----------
fs/tracefs/event_show.c | 125 ++++
fs/tracefs/inode.c | 2 +-
fs/tracefs/internal.h | 40 +-
include/linux/trace_events.h | 2 +-
include/linux/tracefs.h | 31 +-
kernel/trace/trace.c | 7 +-
kernel/trace/trace.h | 4 +-
kernel/trace/trace_events.c | 314 +++++---
.../ftrace/test.d/kprobe/kprobe_args_char.tc | 4 +-
.../ftrace/test.d/kprobe/kprobe_args_string.tc | 4 +-
12 files changed, 812 insertions(+), 531 deletions(-)
create mode 100644 fs/tracefs/event_show.c