Whamcloud - gitweb
LU-9482 hsm: release restore lock without object (part2) 33/27033/4
authorQuentin Bouget <quentin.bouget@cea.fr>
Wed, 10 May 2017 06:54:29 +0000 (08:54 +0200)
committerOleg Drokin <oleg.drokin@intel.com>
Mon, 29 May 2017 18:01:09 +0000 (18:01 +0000)
In the cleanup phase of mdt_hsm_cdt_stop(), there is no need to
recursively unlock the mdt_objects that were to be restored.

Signed-off-by: Quentin Bouget <quentin.bouget@cea.fr>
Change-Id: I4d9212966722d4a2fcecc26210308ea51a200dcd
Reviewed-on: https://review.whamcloud.com/27033
Reviewed-by: Henri Doreau <henri.doreau@cea.fr>
Tested-by: Jenkins
Reviewed-by: John L. Hammond <john.hammond@intel.com>
Tested-by: Maloo <hpdd-maloo@intel.com>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/mdt/mdt_coordinator.c

index 0475011..55c4cc5 100644 (file)
@@ -431,15 +431,9 @@ static void mdt_hsm_cdt_cleanup(struct mdt_device *mdt)
        cdt_mti = lu_context_key_get(&cdt->cdt_env.le_ctx, &mdt_thread_key);
        mutex_lock(&cdt->cdt_restore_lock);
        list_for_each_entry_safe(crh, tmp3, &cdt->cdt_restore_hdl, crh_list) {
        cdt_mti = lu_context_key_get(&cdt->cdt_env.le_ctx, &mdt_thread_key);
        mutex_lock(&cdt->cdt_restore_lock);
        list_for_each_entry_safe(crh, tmp3, &cdt->cdt_restore_hdl, crh_list) {
-               struct mdt_object       *child;
-
-               /* give back layout lock */
-               child = mdt_object_find(&cdt->cdt_env, mdt, &crh->crh_fid);
-               if (!IS_ERR(child))
-                       mdt_object_unlock_put(cdt_mti, child, &crh->crh_lh, 1);
-
                list_del(&crh->crh_list);
                list_del(&crh->crh_list);
-
+               /* give back layout lock */
+               mdt_object_unlock(cdt_mti, NULL, &crh->crh_lh, 1);
                OBD_SLAB_FREE_PTR(crh, mdt_hsm_cdt_kmem);
        }
        mutex_unlock(&cdt->cdt_restore_lock);
                OBD_SLAB_FREE_PTR(crh, mdt_hsm_cdt_kmem);
        }
        mutex_unlock(&cdt->cdt_restore_lock);