Re: [PATCH 14/19] ext3: remove unnecessary dentry_unhash on rmdir/rename_dir
From: Sage Weil <hidden>
Date: 2011-05-25 03:43:28
Also in:
linux-fsdevel
On Wed, 25 May 2011, Yongqiang Yang wrote:
Hi, Which kernel version is this patch based on? Code in my working tree which is 2.6.39-rc3 is already same as the code after the patch applied.
An earlier patch in the series pushes the dentry_unhash call in fs/namei.c down into each file system (on change in behavior). This patch then removes the call because it shouldn't be necessary for extN, or any other file system that doesn't have problems with racing processes getting references to the just-removed directory inode. sage
Thx! Yongqiang. On Wed, May 25, 2011 at 4:06 AM, Sage Weil [off-list ref] wrote:quoted
ext3 has no problems with lingering references to unlinked directory inodes. CC: Jan Kara <jack@suse.cz> CC: Andrew Morton <akpm@linux-foundation.org> CC: Andreas Dilger <adilger.kernel@dilger.ca> CC: linux-ext4@vger.kernel.org Signed-off-by: Sage Weil <redacted> --- fs/ext3/namei.c | 5 ----- 1 files changed, 0 insertions(+), 5 deletions(-)diff --git a/fs/ext3/namei.c b/fs/ext3/namei.c index f89b1d4..32f3b86 100644 --- a/fs/ext3/namei.c +++ b/fs/ext3/namei.c@@ -2074,8 +2074,6 @@ static int ext3_rmdir (struct inode * dir, struct dentry *dentry)struct ext3_dir_entry_2 * de; handle_t *handle; - dentry_unhash(dentry); - /* Initialize quotas before so that eventual writes go in * separate transaction */ dquot_initialize(dir);@@ -2298,9 +2296,6 @@ static int ext3_rename (struct inode * old_dir, struct dentry *old_dentry,struct ext3_dir_entry_2 * old_de, * new_de; int retval, flush_file = 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); -- 1.7.0 -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html-- Best Wishes Yongqiang Yang