From: Yan, Zheng Date: Wed, 18 Apr 2018 10:49:59 +0000 (+0800) Subject: mds: don't mark primary dentry damaged if inode has been repaired X-Git-Tag: v13.1.0~2^2~8 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=5dbc0f9dbf748abfd972fac49a29893a733fb7a8;p=ceph.git mds: don't mark primary dentry damaged if inode has been repaired Signed-off-by: "Yan, Zheng" --- diff --git a/src/mds/ScrubStack.cc b/src/mds/ScrubStack.cc index 59bab338789..05fd1eb2f2c 100644 --- a/src/mds/ScrubStack.cc +++ b/src/mds/ScrubStack.cc @@ -377,13 +377,14 @@ void ScrubStack::_validate_inode_done(CInode *in, int r, in->make_path_string(path, true); } - if (result.backtrace.checked && !result.backtrace.passed - && !result.backtrace.repaired) + if (result.backtrace.checked && !result.backtrace.passed && + !result.backtrace.repaired) { // Record backtrace fails as remote linkage damage, as // we may not be able to resolve hard links to this inode mdcache->mds->damage_table.notify_remote_damaged(in->inode.ino, path); - } else if (result.inode.checked && !result.inode.passed) { + } else if (result.inode.checked && !result.inode.passed && + !result.inode.repaired) { // Record damaged inode structures as damaged dentries as // that is where they are stored auto parent = in->get_projected_parent_dn();