Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
dout(20) << " pending recovery" << dendl;
return; // don't mess with file size probing
}
- if (in->get_num_ref() > (int)in->is_dirty()) {
+ if (in->get_num_ref() > (int)in->is_dirty() + (int)in->is_dirty_parent()) {
dout(20) << " too many inode refs" << dendl;
return;
}
// drop inode
if (in->is_dirty())
in->mark_clean();
+ if (in->is_dirty_parent())
+ in->clear_dirty_parent();
+
remove_inode(in);
// drop dentry?