Whamcloud - gitweb
LU-6896 llog: update log initialization needs to be sync
[fs/lustre-release.git] / lustre / lod / lod_sub_object.c
index 6c46520..cb4f8fd 100644 (file)
@@ -983,7 +983,6 @@ int lod_sub_prep_llog(const struct lu_env *env, struct lod_device *lod,
        }
 
        LASSERT(lgh != NULL);
-       ctxt->loc_handle = lgh;
 
        rc = llog_cat_init_and_process(env, lgh);
        if (rc != 0)
@@ -995,15 +994,14 @@ int lod_sub_prep_llog(const struct lu_env *env, struct lod_device *lod,
                        GOTO(out_close, rc);
        }
 
+       ctxt->loc_handle = lgh;
+
        CDEBUG(D_INFO, "%s: Init llog for %d - catid "DOSTID":%x\n",
               obd->obd_name, index, POSTID(&cid->lci_logid.lgl_oi),
               cid->lci_logid.lgl_ogen);
 out_close:
-       if (rc != 0) {
-               llog_cat_close(env, ctxt->loc_handle);
-               ctxt->loc_handle = NULL;
-       }
-
+       if (rc != 0)
+               llog_cat_close(env, lgh);
 out_put:
        llog_ctxt_put(ctxt);
        RETURN(rc);