From 2872de085ce8ba004e4cf9f218954d0194570c2b Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Wed, 13 Aug 2008 15:39:54 -0700 Subject: [PATCH] mds: mark inode clean when purging dentries for deleted snaps --- src/mds/CDir.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mds/CDir.cc b/src/mds/CDir.cc index dbba58f2dfc03..3fec129a1e145 100644 --- a/src/mds/CDir.cc +++ b/src/mds/CDir.cc @@ -536,6 +536,8 @@ void CDir::purge_stale_snap_data(const set& snaps) if (p == snaps.end() || *p > dn->last) { dout(10) << " purging " << *dn << dendl; + if (dn->is_primary() && dn->inode->is_dirty()) + dn->inode->mark_clean(); remove_dentry(dn); } } @@ -1404,6 +1406,8 @@ void CDir::_commit(version_t want) set::const_iterator p = snaps->lower_bound(dn->first); if (p == snaps->end() || *p > dn->last) { dout(10) << " purging " << *dn << dendl; + if (dn->is_primary() && dn->inode->is_dirty()) + dn->inode->mark_clean(); remove_dentry(dn); continue; } -- 2.39.5