ext2: remove unnecessary dentry_unhash on rmdir/rename_dir
authorSage Weil <[email protected]>
Tue, 24 May 2011 20:06:18 +0000 (13:06 -0700)
committerAl Viro <[email protected]>
Thu, 26 May 2011 11:26:56 +0000 (07:26 -0400)
ext2 has no problems with lingering references to unlinked directory
inodes.

CC: Jan Kara <[email protected]>
CC: [email protected]
Signed-off-by: Sage Weil <[email protected]>
Signed-off-by: Al Viro <[email protected]>
fs/ext2/namei.c

index 516c31dab97c08cbfa51ea6d3b2781c1edb84227..ed5c5d496ee914aacd5e0d3ea6c7dcd98d319794 100644 (file)
@@ -296,8 +296,6 @@ static int ext2_rmdir (struct inode * dir, struct dentry *dentry)
        struct inode * inode = dentry->d_inode;
        int err = -ENOTEMPTY;
 
-       dentry_unhash(dentry);
-
        if (ext2_empty_dir(inode)) {
                err = ext2_unlink(dir, dentry);
                if (!err) {
@@ -320,9 +318,6 @@ static int ext2_rename (struct inode * old_dir, struct dentry * old_dentry,
        struct ext2_dir_entry_2 * old_de;
        int err = -ENOENT;
 
-       if (new_dentry->d_inode && S_ISDIR(new_dentry->d_inode->i_mode))
-               dentry_unhash(new_dentry);
-
        dquot_initialize(old_dir);
        dquot_initialize(new_dir);