From d381825c0e77fd342e5d1cf136135ec3f35ff22a Mon Sep 17 00:00:00 2001 From: Fan Yong Date: Thu, 4 Dec 2014 23:19:57 +0800 Subject: [PATCH] LU-6316 lfsck: skip dot name entry It is unnecessary for the namespace LFSCK to verify the dot entry since it is always on the local MDT and has no linkEA. Signed-off-by: Fan Yong Change-Id: I01289b04c8807e930c6f777007f1e1fb3295431d Reviewed-on: http://review.whamcloud.com/13923 Tested-by: Jenkins Tested-by: Maloo Reviewed-by: Lai Siyao Reviewed-by: Alex Zhuravlev Reviewed-by: Oleg Drokin --- lustre/lfsck/lfsck_engine.c | 4 ++++ lustre/lfsck/lfsck_namespace.c | 3 +-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/lustre/lfsck/lfsck_engine.c b/lustre/lfsck/lfsck_engine.c index 8a05d84..2de9537 100644 --- a/lustre/lfsck/lfsck_engine.c +++ b/lustre/lfsck/lfsck_engine.c @@ -783,6 +783,10 @@ static int lfsck_master_dir_engine(const struct lu_env *env, strcmp(ent->lde_name, dotdot) != 0) goto checkpoint; + /* skip dot entry. */ + if (ent->lde_namelen == 1 && ent->lde_name[0] == '.') + goto checkpoint; + /* The type in the @ent structure may has been overwritten, * so we need to pass the @type parameter independently. */ rc = lfsck_exec_dir(env, lfsck, ent, type); diff --git a/lustre/lfsck/lfsck_namespace.c b/lustre/lfsck/lfsck_namespace.c index 7755e33..bf8dd2f 100644 --- a/lustre/lfsck/lfsck_namespace.c +++ b/lustre/lfsck/lfsck_namespace.c @@ -5066,8 +5066,7 @@ static int lfsck_namespace_assistant_handler_p1(const struct lu_env *env, GOTO(put_dir, rc); } - if (lnr->lnr_name[0] == '.' && - (lnr->lnr_namelen == 1 || fid_seq_is_dot(fid_seq(&lnr->lnr_fid)))) + if (fid_seq_is_dot(fid_seq(&lnr->lnr_fid))) GOTO(out, rc = 0); if (lnr->lnr_lmv != NULL && lnr->lnr_lmv->ll_lmv_master) { -- 1.8.3.1