Hi, This started as a bug report by Hillf Danton and aims to access kernfs_node::{name|parent} with RCU to avoid the lock during kernfs_path_from_node(). I've split the individual fixes in separate patches (#1 to #4). I've also split the ::parent and ::name RCU conversation into a single patch (#5 and #6). v3: https://lore.kernel.org/all/20241121175250.EJbI7VMb@xxxxxxxxxxxxx/ v2: https://lore.kernel.org/all/20241112155713.269214-1-bigeasy@xxxxxxxxxxxxx/ v1: https://lore.kernel.org/all/20241108222406.n5azgO98@xxxxxxxxxxxxx/ Sebastian Sebastian Andrzej Siewior (6): kernfs: Acquire kernfs_rwsem in kernfs_notify_workfn(). kernfs: Acquire kernfs_rwsem in kernfs_get_parent_dentry(). kernfs: Acquire kernfs_rwsem in kernfs_node_dentry(). kernfs: Don't re-lock kernfs_root::kernfs_rwsem in kernfs_fop_readdir(). kernfs: Use RCU to access kernfs_node::parent. kernfs: Use RCU to access kernfs_node::name. arch/x86/kernel/cpu/resctrl/internal.h | 5 + arch/x86/kernel/cpu/resctrl/pseudo_lock.c | 14 +- arch/x86/kernel/cpu/resctrl/rdtgroup.c | 60 ++++--- fs/kernfs/dir.c | 203 ++++++++++++---------- fs/kernfs/file.c | 6 +- fs/kernfs/kernfs-internal.h | 24 ++- fs/kernfs/mount.c | 21 ++- fs/kernfs/symlink.c | 30 ++-- fs/sysfs/dir.c | 2 +- fs/sysfs/file.c | 24 ++- include/linux/kernfs.h | 11 +- kernel/cgroup/cgroup-v1.c | 2 +- kernel/cgroup/cgroup.c | 16 +- security/selinux/hooks.c | 7 +- 14 files changed, 263 insertions(+), 162 deletions(-) -- 2.47.2