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

From: Steven Rostedt
Date: Mon Jul 31 2023 - 20:14:47 EST



This patch set is on top of:

https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git/
trace/core

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 plan on adding the first patch to the next merge window. The second
patch I plan on adding to the merge window after that.

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.

Steven Rostedt (Google) (2):
tracefs: Add show_events_dentries
eventfs: Remove eventfs_file and just use eventfs_inode

----
fs/tracefs/Makefile | 1 +
fs/tracefs/event_inode.c | 781 ++++++++++++++++++++++---------------------
fs/tracefs/event_show.c | 125 +++++++
fs/tracefs/inode.c | 2 +-
fs/tracefs/internal.h | 34 +-
include/linux/trace_events.h | 2 +-
include/linux/tracefs.h | 31 +-
kernel/trace/trace.h | 4 +-
kernel/trace/trace_events.c | 309 ++++++++++++-----
9 files changed, 795 insertions(+), 494 deletions(-)
create mode 100644 fs/tracefs/event_show.c