summaryrefslogtreecommitdiff
path: root/tools/lib/python/kdoc
diff options
context:
space:
mode:
authorBreno Leitao <leitao@debian.org>2026-09-18 04:01:57 -0700
committerChristian Brauner <brauner@kernel.org>2026-09-25 16:57:24 +0200
commita647a53bc89a046bee4a12a0a5627f2dfaaef807 (patch)
treedac5a026601bdf8177597c5e9834dac88566efe7 /tools/lib/python/kdoc
parent9a82c64e133fdaf6e250dcb25c57e8d0d837ea64 (diff)
downloadlinux-next-a647a53bc89a046bee4a12a0a5627f2dfaaef807.tar.gz
linux-next-a647a53bc89a046bee4a12a0a5627f2dfaaef807.zip
dcache: report a Tasks-RCU quiescent state in dentry_kill()
I am constantly seeing the following warning on Meta's fleet: INFO: rcu_tasks detected stalls on tasks: native_queued_spin_lock_slowpath locked_inode_to_wb_and_lock_list inode_io_list_del evict __dentry_kill shrink_dentry_list shrink_dcache_tree d_invalidate btrfs_delete_subvolume btrfs_ioctl_snap_destroy btrfs_ioctl do_syscall_64 dentry_kill() is the common funnel for dentry teardown: dput(), shrink_dentry_list() and shrink_dcache_tree() all reach it, once per dentry, and its cond_resched() is the only reschedule point on that path. cond_resched() is not an RCU-tasks quiescent state. Use cond_resched_tasks_rcu_qs() so the teardown reports an RCU-tasks quiescent state as it proceeds. Fixes: 9c5f1d30199d ("dcache: move cond_resched() into the end of __dentry_kill()") Cc: stable@vger.kernel.org Signed-off-by: Breno Leitao <leitao@debian.org> Link: https://patch.msgid.link/20260918-dcache-task-rcu-qa-v1-1-963ec83e6d0b@debian.org Reviewed-by: Paul E. McKenney <paulmck@kernel.org> Signed-off-by: Christian Brauner (Amutable) <brauner@kernel.org>
Diffstat (limited to 'tools/lib/python/kdoc')
0 files changed, 0 insertions, 0 deletions