dn->state_clear(CDentry::STATE_PURGING | CDentry::STATE_PURGINGPINNED);
dn->put(CDentry::PIN_PURGING);
- // 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;
} else {
in->mdcache->touch_dentry_bottom(dn); // drop dn as quickly as possible.
}
+
+ // drop inode
+ if (in->is_dirty())
+ in->mark_clean();
+ in->mdcache->remove_inode(in);
}
void StrayManager::enqueue(CDentry *dn, bool trunc)