diff --git a/fs/9p/vfs_inode.c b/fs/9p/vfs_inode.c
index c072bb97e957..8e9d60345bc8 100644
--- a/fs/9p/vfs_inode.c
+++ b/fs/9p/vfs_inode.c
@@ -884,6 +884,11 @@ v9fs_vfs_rename(struct inode *old_dir, struct dentry *old_dentry,
 				clear_nlink(new_inode);
 			else
 				drop_nlink(new_inode);
+			/*
+			 * Work around vfs rename rehash bug with
+			 * FS_RENAME_DOES_D_MOVE
+			 */
+			v9fs_invalidate_inode_attr(new_inode);
 		}
 		if (S_ISDIR(old_inode->i_mode)) {
 			if (!new_inode)