summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSage Weil <sage@inktank.com>2013-06-07 22:04:09 -0700
committerGreg Farnum <greg@inktank.com>2013-10-09 13:31:38 -0700
commitda5c81353989b33dc2bfb76c8cd3adeb090ab248 (patch)
tree33b28419e3302c5d7f4236f5ae6f5acd86f98fe4
parent4cdfabb58f0ac41ae7da33b4d358e5ba0dcee85e (diff)
downloadceph-cuttlefish-4832.tar.gz
mds: fix filelock eval_gathercuttlefish-4832
Broken by a08d62045657713bf0a5372bf14136082ec3b17e Reported-by: Yan, Zheng <yan.zheng@intel.com> Signed-off-by: Sage Weil <sage@inktank.com> (cherry picked from commit e8300d0afb5154d4d13536abdcf47bd5cc8ce810) Reviewed-by: Greg Farnum <greg@inktank.com>
-rw-r--r--src/mds/Locker.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/mds/Locker.cc b/src/mds/Locker.cc
index fd46be09320..28d09f33978 100644
--- a/src/mds/Locker.cc
+++ b/src/mds/Locker.cc
@@ -646,12 +646,13 @@ void Locker::eval_gather(SimpleLock *lock, bool first, bool *pneed_issue, list<C
assert(in);
if (in->state_test(CInode::STATE_RECOVERING)) {
dout(7) << "eval_gather finished gather, but still recovering" << dendl;
+ return;
} else if (in->state_test(CInode::STATE_NEEDSRECOVER)) {
dout(7) << "eval_gather finished gather, but need to recover" << dendl;
mds->mdcache->queue_file_recover(in);
mds->mdcache->do_file_recover();
+ return;
}
- return;
}
if (!lock->get_parent()->is_auth()) {