summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/mds/Locker.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/mds/Locker.cc b/src/mds/Locker.cc
index aa90bb07b30..57154b3d9f6 100644
--- a/src/mds/Locker.cc
+++ b/src/mds/Locker.cc
@@ -4150,6 +4150,10 @@ void Locker::file_eval(ScatterLock *lock, bool *need_issue)
if (lock->get_parent()->is_freezing_or_frozen())
return;
+ // wait for scan
+ if (lock->get_state() == LOCK_SCAN)
+ return;
+
// excl -> *?
if (lock->get_state() == LOCK_EXCL) {
dout(20) << " is excl" << dendl;