From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sage Weil Subject: [PATCH 11/26] omfs: remove unnecessary dentry_unhash on rmdir, dir rneame Date: Fri, 27 May 2011 13:42:04 -0700 Message-ID: <1306528939-30636-12-git-send-email-sage@newdream.net> References: <1306528939-30636-1-git-send-email-sage@newdream.net> Cc: linux-fsdevel@vger.kernel.org, Sage Weil , Bob Copeland , linux-karma-devel@lists.sourceforge.net To: hch@infradead.org, viro@ZenIV.linux.org.uk Return-path: Received: from cobra.newdream.net ([66.33.216.30]:43512 "EHLO cobra.newdream.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756646Ab1E0Ulv (ORCPT ); Fri, 27 May 2011 16:41:51 -0400 In-Reply-To: <1306528939-30636-1-git-send-email-sage@newdream.net> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: omfs does not have problems with references to unlinked directories. CC: Bob Copeland CC: linux-karma-devel@lists.sourceforge.net Signed-off-by: Sage Weil --- fs/omfs/dir.c | 11 +++-------- 1 files changed, 3 insertions(+), 8 deletions(-) diff --git a/fs/omfs/dir.c b/fs/omfs/dir.c index c368360..3b8d397 100644 --- a/fs/omfs/dir.c +++ b/fs/omfs/dir.c @@ -241,11 +241,9 @@ static int omfs_remove(struct inode *dir, struct dentry *dentry) int ret; - if (S_ISDIR(inode->i_mode)) { - dentry_unhash(dentry); - if (!omfs_dir_is_empty(inode)) - return -ENOTEMPTY; - } + if (S_ISDIR(inode->i_mode) && + !omfs_dir_is_empty(inode)) + return -ENOTEMPTY; ret = omfs_delete_entry(dentry); if (ret) @@ -382,9 +380,6 @@ static int omfs_rename(struct inode *old_dir, struct dentry *old_dentry, int err; if (new_inode) { - if (S_ISDIR(new_inode->i_mode)) - dentry_unhash(new_dentry); - /* overwriting existing file/dir */ err = omfs_remove(new_dir, new_dentry); if (err) -- 1.7.0