]> git.ipfire.org Git - thirdparty/linux.git/commitdiff
pidfs: raise DCACHE_DONTCACHE explicitly
authorChristian Brauner <brauner@kernel.org>
Wed, 29 Oct 2025 12:20:17 +0000 (13:20 +0100)
committerChristian Brauner <brauner@kernel.org>
Fri, 31 Oct 2025 09:16:24 +0000 (10:16 +0100)
While pidfs dentries are never hashed and thus retain_dentry() will never
consider them for placing them on the LRU it isn't great to always have
to go and remember that. Raise DCACHE_DONTCACHE explicitly as a visual
marker that dentries aren't kept but freed immediately instead.

Link: https://patch.msgid.link/20251029-work-namespace-nstree-listns-v4-4-2e6f823ebdc0@kernel.org
Tested-by: syzbot@syzkaller.appspotmail.com
Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Christian Brauner <brauner@kernel.org>
fs/pidfs.c

index 0ef5b47d796a267c15fb629817895af574e6954d..db236427fc2cee8603fb52f5278d0d114437ab2d 100644 (file)
@@ -1022,6 +1022,7 @@ static int pidfs_init_fs_context(struct fs_context *fc)
 
        fc->s_iflags |= SB_I_NOEXEC;
        fc->s_iflags |= SB_I_NODEV;
+       ctx->s_d_flags |= DCACHE_DONTCACHE;
        ctx->ops = &pidfs_sops;
        ctx->eops = &pidfs_export_operations;
        ctx->dops = &pidfs_dentry_operations;