From: Yan, Zheng Date: Fri, 27 Mar 2015 07:09:21 +0000 (+0800) Subject: mds: properly remove inode after purging stray X-Git-Tag: v9.0.0~79^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F4200%2Fhead;p=ceph.git mds: properly remove inode after purging stray Signed-off-by: Yan, Zheng --- diff --git a/src/mds/StrayManager.cc b/src/mds/StrayManager.cc index be702aca6f4e..e0e3a7ab89f8 100644 --- a/src/mds/StrayManager.cc +++ b/src/mds/StrayManager.cc @@ -297,13 +297,13 @@ void StrayManager::_purge_stray_logged(CDentry *dn, version_t pdv, LogSegment *l // drop inode if (in->is_dirty()) in->mark_clean(); + in->mdcache->remove_inode(in); // drop dentry? if (dn->is_new()) { dout(20) << " dn is new, removing" << dendl; dn->mark_clean(); dn->dir->remove_dentry(dn); - in->mdcache->remove_inode(in); } else { in->mdcache->touch_dentry_bottom(dn); // drop dn as quickly as possible. }