mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 02:44:41 +01:00
ref_tracker: do xarray and workqueue job initializations earlier
The kernel test robot reported an oops that occurred when attempting to
deregister a dentry from the xarray during subsys_initcall().
The ref_tracker xarrays and workqueue job are being initialized in
late_initcall() which is too late. Move those to postcore_initcall()
instead.
Fixes: 65b584f536 ("ref_tracker: automatically register a file in debugfs for a ref_tracker_dir")
Reported-by: kernel test robot <oliver.sang@intel.com>
Closes: https://lore.kernel.org/oe-lkp/202506251406.c28f2adb-lkp@intel.com
Signed-off-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Link: https://patch.msgid.link/20250626-reftrack-dbgfs-v1-1-812102e2a394@kernel.org
This commit is contained in:
parent
707bd05be7
commit
f4e6aefb9c
1 changed files with 8 additions and 2 deletions
|
|
@ -516,13 +516,19 @@ static void debugfs_reap_work(struct work_struct *work)
|
|||
} while (reaped);
|
||||
}
|
||||
|
||||
static int __init ref_tracker_debugfs_init(void)
|
||||
static int __init ref_tracker_debugfs_postcore_init(void)
|
||||
{
|
||||
INIT_WORK(&debugfs_reap_worker, debugfs_reap_work);
|
||||
xa_init_flags(&debugfs_dentries, XA_FLAGS_LOCK_IRQ);
|
||||
xa_init_flags(&debugfs_symlinks, XA_FLAGS_LOCK_IRQ);
|
||||
return 0;
|
||||
}
|
||||
postcore_initcall(ref_tracker_debugfs_postcore_init);
|
||||
|
||||
static int __init ref_tracker_debugfs_late_init(void)
|
||||
{
|
||||
ref_tracker_debug_dir = debugfs_create_dir("ref_tracker", NULL);
|
||||
return 0;
|
||||
}
|
||||
late_initcall(ref_tracker_debugfs_init);
|
||||
late_initcall(ref_tracker_debugfs_late_init);
|
||||
#endif /* CONFIG_DEBUG_FS */
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue