Unverified Commit be57855f authored by Eric Van Hensbergen's avatar Eric Van Hensbergen
Browse files

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: default avatarEric Van Hensbergen <ericvh@kernel.org>
parent 724a0845
Loading
Loading
Loading
Loading
+0 −16
Original line number Diff line number Diff line
@@ -244,21 +244,6 @@ static int v9fs_statfs(struct dentry *dentry, struct kstatfs *buf)
	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,