mds: explicitly issue_caps for slave xlock release

Signed-off-by: Sage Weil <sage@newdream.net>
This commit is contained in:
Sage Weil 2011-06-09 12:52:48 -07:00
parent cc398ccfa7
commit ffeb59d5e5

View File

@ -1375,8 +1375,11 @@ void Server::dispatch_slave_request(MDRequest *mdr)
SimpleLock *lock = mds->locker->get_lock(mdr->slave_request->get_lock_type(),
mdr->slave_request->get_object_info());
assert(lock);
mds->locker->xlock_finish(lock, mdr);
bool need_issue = false;
mds->locker->xlock_finish(lock, mdr, &need_issue);
if (need_issue)
mds->locker->issue_caps((CInode*)lock->get_parent());
// done. no ack necessary.
mdr->slave_request->put();
mdr->slave_request = 0;