X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=blobdiff_plain;f=lustre%2Flfsck%2Flfsck_namespace.c;h=d1b66a8ff74c8816a3bb8f9dc0d052bec2d0db21;hp=cd519fc08dbc4d1fed58214614f38a7c0c2ed25c;hb=f3ea0cea6bb6766eaa55571774b9ae942a6bf297;hpb=5b3eef20c5a0e31d2cd9580f0cbaa0223783905a diff --git a/lustre/lfsck/lfsck_namespace.c b/lustre/lfsck/lfsck_namespace.c index cd519fc..d1b66a8 100644 --- a/lustre/lfsck/lfsck_namespace.c +++ b/lustre/lfsck/lfsck_namespace.c @@ -557,7 +557,7 @@ static int lfsck_namespace_init(const struct lu_env *env, * trace file * \param[in] add true if add new flags, otherwise remove flags * - * \retval 0 for succeed or nothing to be done + * \retval 0 for success or nothing to be done * \retval negative error number on failure */ int lfsck_namespace_trace_update(const struct lu_env *env, @@ -2150,7 +2150,7 @@ log: "entry for: parent "DFID", child "DFID", name %s, type " "in name entry %o, type claimed by child %o. repair it " "by %s with new name2 %s: rc = %d\n", lfsck_lfsck2name(lfsck), - PFID(lfsck_dto2fid(parent)), PFID(lfsck_dto2fid(child)), + PFID(lfsck_dto2fid(parent)), PFID(cfid), name, type, update ? lfsck_object_type(child) : 0, update ? "updating" : "removing", name2, rc); @@ -4539,7 +4539,7 @@ static int lfsck_namespace_in_notify(const struct lu_env *env, struct lfsck_assistant_data *lad = com->lc_data; struct lfsck_tgt_descs *ltds = &lfsck->li_mdt_descs; struct lfsck_tgt_desc *ltd; - int rc; + int rc = 0; bool fail = false; ENTRY; @@ -4630,7 +4630,10 @@ log: if (IS_ERR(obj)) RETURN(PTR_ERR(obj)); - rc = lfsck_namespace_notify_lmv_master_local(env, com, obj); + if (likely(dt_object_exists(obj))) + rc = lfsck_namespace_notify_lmv_master_local(env, com, + obj); + lfsck_object_put(env, obj); RETURN(rc > 0 ? 0 : rc); @@ -5390,7 +5393,7 @@ out: rc = lfsck_namespace_repair_bad_name_hash(env, com, dir, lnr->lnr_lmv, lnr->lnr_name); - if (rc >= 0) + if (rc == 0) bad_hash = true; }