summaryrefslogtreecommitdiff
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:46:56 +0000
commitbe57855f505003c5cafff40338d5d0f23b00ba4d (patch)
tree8e18a95af8e7a76083ab61bba1948fb5176ee134
parent724a08450f74b02bd89078a596fd24857827c012 (diff)
downloadlwn-be57855f505003c5cafff40338d5d0f23b00ba4d.tar.gz
lwn-be57855f505003c5cafff40338d5d0f23b00ba4d.zip
fs/9p: fix dups even in uncached mode
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 eeac06c2a84c..4236058c7bbd 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,