Commit b46799a8 authored by Pavel Shilovsky's avatar Pavel Shilovsky Committed by Steve French

CIFS: Fix wrong directory attributes after rename

When we requests rename we also need to update attributes
of both source and target parent directories. Not doing it
causes generic/309 xfstest to fail on SMB2 mounts. Fix this
by marking these directories for force revalidating.

Cc: <stable@vger.kernel.org>
Signed-off-by: default avatarPavel Shilovsky <pshilovsky@samba.org>
Signed-off-by: default avatarSteve French <smfrench@gmail.com>
parent 52755808
...@@ -1717,6 +1717,12 @@ cifs_rename(struct inode *source_dir, struct dentry *source_dentry, ...@@ -1717,6 +1717,12 @@ cifs_rename(struct inode *source_dir, struct dentry *source_dentry,
target_dentry, to_name); target_dentry, to_name);
} }
/* force revalidate to go get info when needed */
CIFS_I(source_dir)->time = CIFS_I(target_dir)->time = 0;
source_dir->i_ctime = source_dir->i_mtime = target_dir->i_ctime =
target_dir->i_mtime = current_fs_time(source_dir->i_sb);
cifs_rename_exit: cifs_rename_exit:
kfree(info_buf_source); kfree(info_buf_source);
kfree(from_name); kfree(from_name);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment