]> git.ipfire.org Git - thirdparty/linux.git/commit
fuse: make sure dentry is evicted if stale
authorMiklos Szeredi <mszeredi@redhat.com>
Wed, 14 Jan 2026 14:53:39 +0000 (15:53 +0100)
committerChristian Brauner <brauner@kernel.org>
Fri, 16 Jan 2026 18:15:14 +0000 (19:15 +0100)
commit1e2c1af1beb395841743e240a59ab37edc9a7d33
tree5b6bee79b87eb9fed11bae55914ab3bfd8d9a407
parentcb8d2bdcb8241b66ca4ac4868f20e12cd6881ebc
fuse: make sure dentry is evicted if stale

d_dispose_if_unused() may find the dentry with a positive refcount, in
which case it won't be put on the dispose list even though it has already
timed out.

"Reinstall" the d_delete() callback, which was optimized out in
fuse_dentry_settime().  This will result in the dentry being evicted as
soon as the refcount hits zero.

Fixes: ab84ad597386 ("fuse: new work queue to periodically invalidate expired dentries")
Signed-off-by: Miklos Szeredi <mszeredi@redhat.com>
Link: https://patch.msgid.link/20260114145344.468856-3-mszeredi@redhat.com
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/fuse/dir.c