If the underwater dentry is a remove link, we shouldn't mark the
inode clean
Signed-off-by: Yan, Zheng <zheng.z.yan@intel.com>
dout(10) << "_fetched had underwater dentry " << *dn << ", marking clean" << dendl;
dn->mark_clean();
- if (dn->get_linkage()->get_inode()) {
+ if (dn->get_linkage()->is_primary()) {
assert(dn->get_linkage()->get_inode()->get_version() <= got_fnode.version);
dout(10) << "_fetched had underwater inode " << *dn->get_linkage()->get_inode() << ", marking clean" << dendl;
dn->get_linkage()->get_inode()->mark_clean();