Message ID | 20250417-reftrack-dbgfs-v3-2-c3159428c8fb@kernel.org (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | ref_tracker: add ability to register a debugfs file for a ref_tracker_dir | expand |
Context | Check | Description |
---|---|---|
netdev/tree_selection | success | Guessing tree name failed - patch did not apply |
On Thu, Apr 17, 2025 at 09:11:05AM -0400, Jeff Layton wrote: > Add a new "ref_tracker" directory in debugfs. Each individual refcount > tracker can register files under there to display info about > currently-held references. > > Signed-off-by: Jeff Layton <jlayton@kernel.org> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Andrew
diff --git a/lib/ref_tracker.c b/lib/ref_tracker.c index de71439e12a3bab6456910986fa611dfbdd97980..a66cde325920780cfe7529ea9d827d0ee943318d 100644 --- a/lib/ref_tracker.c +++ b/lib/ref_tracker.c @@ -12,6 +12,8 @@ #define REF_TRACKER_STACK_ENTRIES 16 #define STACK_BUF_SIZE 1024 +static struct dentry *ref_tracker_debug_dir = (struct dentry *)-ENOENT; + struct ref_tracker { struct list_head head; /* anchor into dir->list or dir->quarantine */ bool dead; @@ -273,3 +275,17 @@ int ref_tracker_free(struct ref_tracker_dir *dir, return 0; } EXPORT_SYMBOL_GPL(ref_tracker_free); + +#ifdef CONFIG_DEBUG_FS +#include <linux/debugfs.h> + +static int __init ref_tracker_debugfs_init(void) +{ + ref_tracker_debug_dir = debugfs_create_dir("ref_tracker", NULL); + if (IS_ERR(ref_tracker_debug_dir)) + pr_warn("ref_tracker: unable to create debugfs ref_tracker directory: %pe\n", + ref_tracker_debug_dir); + return 0; +} +late_initcall(ref_tracker_debugfs_init); +#endif /* CONFIG_DEBUG_FS */
Add a new "ref_tracker" directory in debugfs. Each individual refcount tracker can register files under there to display info about currently-held references. Signed-off-by: Jeff Layton <jlayton@kernel.org> --- lib/ref_tracker.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+)