From c72be99e5691051eb24646b96595f13af9f61058 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Mon, 23 Mar 2009 16:04:51 -0700 Subject: [PATCH] mds: fix xlock authpinning Remove extra auth_pin call.. we pin when going from LOCK to LOCK_XLOCK. --- src/mds/Locker.cc | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/mds/Locker.cc b/src/mds/Locker.cc index aa376bd61150c..50b1bf00c0c83 100644 --- a/src/mds/Locker.cc +++ b/src/mds/Locker.cc @@ -758,7 +758,6 @@ bool Locker::xlock_start(SimpleLock *lock, MDRequest *mut) // auth while (1) { if (lock->can_xlock(client)) { - lock->get_parent()->auth_pin(lock); lock->set_state(LOCK_XLOCK); lock->get_xlock(mut, client); mut->xlocks.insert(lock); @@ -837,8 +836,8 @@ void Locker::xlock_finish(SimpleLock *lock, Mutation *mut) lock->get_num_rdlocks() == 0 && lock->get_num_wrlocks() == 0 && lock->get_num_client_lease() == 0) { - if (!lock->is_stable()) - lock->get_parent()->auth_unpin(lock); + assert(!lock->is_stable()); + lock->get_parent()->auth_unpin(lock); lock->set_state(LOCK_LOCK); } -- 2.39.5