ext4: remove unnecessary dentry_unhash on rmdir/rename_dir
authorSage Weil <sage@newdream.net>
Tue, 24 May 2011 20:06:16 +0000 (13:06 -0700)
committerAl Viro <viro@zeniv.linux.org.uk>
Thu, 26 May 2011 11:26:55 +0000 (07:26 -0400)
ext4 has no problems with lingering references to unlinked directory
inodes.

CC: "Theodore Ts'o" <tytso@mit.edu>
CC: Andreas Dilger <adilger.kernel@dilger.ca>
CC: linux-ext4@vger.kernel.org
Signed-off-by: Sage Weil <sage@newdream.net>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/ext4/namei.c

index 792d06e811c15765dd49ee0f4d7a525a295466ff..67fd0b0258589ae64428d26530807b898e79854b 100644 (file)
@@ -2123,8 +2123,6 @@ static int ext4_rmdir(struct inode *dir, struct dentry *dentry)
        struct ext4_dir_entry_2 *de;
        handle_t *handle;
 
-       dentry_unhash(dentry);
-
        /* Initialize quotas before so that eventual writes go in
         * separate transaction */
        dquot_initialize(dir);
@@ -2352,9 +2350,6 @@ static int ext4_rename(struct inode *old_dir, struct dentry *old_dentry,
        struct ext4_dir_entry_2 *old_de, *new_de;
        int retval, force_da_alloc = 0;
 
-       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);