Slave requests ask for each xlock one at a time. Don't bail out based on
the done_locking flag.
Signed-off-by: Sage Weil <sage@newdream.net>
set<SimpleLock*> &wrlocks,
set<SimpleLock*> &xlocks)
{
- if (mdr->done_locking) {
+ if (mdr->done_locking &&
+ !mdr->is_slave()) { // not on slaves! master requests locks piecemeal.
dout(10) << "acquire_locks " << *mdr << " - done locking" << dendl;
return true; // at least we had better be!
}