vfs: push dentry_unhash on rename_dir into file systems
[linux-3.10.git] / fs / cifs / inode.c
index cee5896..18546b7 100644 (file)
@@ -1571,6 +1571,9 @@ int cifs_rename(struct inode *source_dir, struct dentry *source_dentry,
        FILE_UNIX_BASIC_INFO *info_buf_target;
        int xid, rc, tmprc;
 
+       if (target_dentry->d_inode && S_ISDIR(target_dentry->d_inode->i_mode))
+               dentry_unhash(target_dentry);
+
        cifs_sb = CIFS_SB(source_dir->i_sb);
        tlink = cifs_sb_tlink(cifs_sb);
        if (IS_ERR(tlink))