From: Remi Pommarel Date: Thu, 21 May 2026 09:40:31 +0000 (+0200) Subject: 9p: Set default negative dentry retention time for cache=loose X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=15bbf82857fa61de9bad9faa7a3cf3a95b1b292a;p=thirdparty%2Fkernel%2Flinux.git 9p: Set default negative dentry retention time for cache=loose For cache=loose mounts, set the default negative dentry cache retention time to 24 hours. Signed-off-by: Remi Pommarel Message-ID: Signed-off-by: Dominique Martinet --- diff --git a/fs/9p/v9fs.c b/fs/9p/v9fs.c index 3e758b66fefa..274c5157135d 100644 --- a/fs/9p/v9fs.c +++ b/fs/9p/v9fs.c @@ -24,6 +24,9 @@ #include "v9fs_vfs.h" #include "cache.h" +/* cache=loose default negative dentry retention time is 24hours */ +#define CACHE_LOOSE_NDENTRY_TIMEOUT_DEFAULT (24 * 60 * 60 * 1000) + static DEFINE_SPINLOCK(v9fs_sessionlist_lock); static LIST_HEAD(v9fs_sessionlist); struct kmem_cache *v9fs_inode_cache; @@ -441,6 +444,13 @@ static void v9fs_apply_options(struct v9fs_session_info *v9ses, v9ses->uid = ctx->session_opts.uid; v9ses->session_lock_timeout = ctx->session_opts.session_lock_timeout; v9ses->ndentry_timeout_ms = ctx->session_opts.ndentry_timeout_ms; + + /* If negative dentry timeout has not been overridden set default for + * cache=loose + */ + if (!(v9ses->flags & V9FS_NDENTRY_TIMEOUT_SET) && + (v9ses->cache & CACHE_LOOSE)) + v9ses->ndentry_timeout_ms = CACHE_LOOSE_NDENTRY_TIMEOUT_DEFAULT; } /**