fs/9p: mark inode attribute invalid on rename, unlink and setattr
rename, unlink and setattr can result in update of inode attribute.
So mark the cached copy invalid
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.vnet.ibm.com>
Signed-off-by: Venkateswararao Jujjuri <jvrao@linux.vnet.ibm.com>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c
index a28fe9f..3e3ffe3 100644
--- a/fs/9p/vfs_inode.c
+++ b/fs/9p/vfs_inode.c
@@ -521,6 +521,7 @@
drop_nlink(dir);
} else
drop_nlink(file_inode);
+ v9fs_invalidate_inode_attr(file_inode);
}
return retval;
}
@@ -884,6 +885,8 @@
inc_nlink(new_dir);
drop_nlink(old_dir);
}
+ v9fs_invalidate_inode_attr(old_inode);
+
/* successful rename */
d_move(old_dentry, new_dentry);
}
@@ -983,6 +986,7 @@
if (retval < 0)
return retval;
+ v9fs_invalidate_inode_attr(dentry->d_inode);
if ((iattr->ia_valid & ATTR_SIZE) &&
iattr->ia_size != i_size_read(dentry->d_inode)) {
retval = vmtruncate(dentry->d_inode, iattr->ia_size);