summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@hammerspace.com>2022-02-19 09:56:45 -0500
committerTrond Myklebust <trond.myklebust@hammerspace.com>2022-03-02 08:43:39 -0500
commit2c2c336506e9bd4056fca25301b8a06fb7aefd32 (patch)
tree87a88bcd1746d9a20bd65d4e8cb3182b5b56e348
parentc49c68944f2d4c3827cd8ac7f70da277674d11ad (diff)
downloadlinux-2c2c336506e9bd4056fca25301b8a06fb7aefd32.tar.bz2
NFS: Readdirplus can't help lookup for case insensitive filesystems
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 <trond.myklebust@hammerspace.com>
-rw-r--r--fs/nfs/dir.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/nfs/dir.c b/fs/nfs/dir.c
index 098fc1bdaac8..dcfc44411787 100644
--- a/fs/nfs/dir.c
+++ b/fs/nfs/dir.c
@@ -696,6 +696,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);
}