2022-02-28 08:06:47

by Trond Myklebust

[permalink] [raw]
Subject: [PATCH v9 17/27] NFS: Readdirplus can't help lookup for case insensitive filesystems

From: Trond Myklebust <[email protected]>

If the filesystem is case insensitive, then readdirplus can't help with
cache misses, since it won't return case folded variants of the filename.

Signed-off-by: Trond Myklebust <[email protected]>
---
fs/nfs/dir.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
index c5c7175a257c..5892c4ee3a6d 100644
--- a/fs/nfs/dir.c
+++ b/fs/nfs/dir.c
@@ -694,6 +694,8 @@ void nfs_readdir_record_entry_cache_miss(struct inode *dir)

static void nfs_lookup_advise_force_readdirplus(struct inode *dir)
{
+ if (nfs_server_capable(dir, NFS_CAP_CASE_INSENSITIVE))
+ return;
nfs_readdir_record_entry_cache_miss(dir);
}

--
2.35.1