aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Van Hensbergen <ericvh@kernel.org>2024-01-06 18:47:23 +0000
committerEric Van Hensbergen <ericvh@kernel.org>2024-01-26 16:19:20 +0000
commitdaf7f38dea78f549aa0e65e7cf0170e6a0fd29e5 (patch)
tree8e18a95af8e7a76083ab61bba1948fb5176ee134
parent7809471f82c810c94bb208504e1b2126de2132fa (diff)
downloadv9fs-b4/ericvh-fix-cache-dups.tar.gz
fs/9p: fix dups even in uncached modeb4/ericvh-fix-cache-dups
In uncached mode we were still seeing duplicate getattr requests because of aggressive dropping of inodes. Inode "freshness" is guarded by other mechanisms when caches are disabled so this is unnecessary and increases overhead of almost every operation. Signed-off-by: Eric Van Hensbergen <ericvh@kernel.org>
-rw-r--r--fs/9p/vfs_super.c16
1 files changed, 0 insertions, 16 deletions
diff --git a/fs/9p/vfs_super.c b/fs/9p/vfs_super.c
index eeac06c2a84cf..4236058c7bbd1 100644
--- a/fs/9p/vfs_super.c
+++ b/fs/9p/vfs_super.c
@@ -244,21 +244,6 @@ done:
return res;
}
-static int v9fs_drop_inode(struct inode *inode)
-{
- struct v9fs_session_info *v9ses;
-
- v9ses = v9fs_inode2v9ses(inode);
- if (v9ses->cache & (CACHE_META|CACHE_LOOSE))
- return generic_drop_inode(inode);
- /*
- * in case of non cached mode always drop the
- * inode because we want the inode attribute
- * to always match that on the server.
- */
- return 1;
-}
-
static int v9fs_write_inode(struct inode *inode,
struct writeback_control *wbc)
{
@@ -293,7 +278,6 @@ static const struct super_operations v9fs_super_ops_dotl = {
.alloc_inode = v9fs_alloc_inode,
.free_inode = v9fs_free_inode,
.statfs = v9fs_statfs,
- .drop_inode = v9fs_drop_inode,
.evict_inode = v9fs_evict_inode,
.show_options = v9fs_show_options,
.umount_begin = v9fs_umount_begin,