From: Sergey Cheremencev Date: Wed, 27 May 2015 18:20:46 +0000 (-0700) Subject: LU-6207 osd: add osd_ost_fini in osd_obj_map_init X-Git-Tag: 2.7.57~77 X-Git-Url: https://git.whamcloud.com/?p=fs%2Flustre-release.git;a=commitdiff_plain;h=948794929c5724e6a78b2c470bf97bcea1a67555;ds=sidebyside LU-6207 osd: add osd_ost_fini in osd_obj_map_init In case of ENOSPC in osd_mdt_init->simple_mkdir("REMOTE_PARENT_DIR") missed dput(for "O") causes kernel panic with msg: BUG: Dentry ffff88005d6b3e40{i=b2,n=O} still in use (1) Change-Id: Ibd5391e781e19efe48e9a9700ee4565b46c2f0b5 Signed-off-by: Sergey Cheremencev Xyratex-bug-id: MRP-2059 Reviewed-on: http://es-gerrit.xyus.xyratex.com:8080/4431 Tested-by: Jenkins Reviewed-by: Alexander Zarochentsev Reviewed-by: Rahul Deshmukh Tested-by: Elena Gryaznova Reviewed-by: Vitaly Fertman Reviewed-on: http://review.whamcloud.com/13649 Tested-by: Maloo Reviewed-by: Andreas Dilger Reviewed-by: Yang Sheng --- diff --git a/lustre/osd-ldiskfs/osd_compat.c b/lustre/osd-ldiskfs/osd_compat.c index da016a3..bf317d0 100644 --- a/lustre/osd-ldiskfs/osd_compat.c +++ b/lustre/osd-ldiskfs/osd_compat.c @@ -477,6 +477,8 @@ int osd_obj_map_init(const struct lu_env *env, struct osd_device *dev) /* prepare structures for MDS */ rc = osd_mdt_init(env, dev); + if (rc) + osd_ost_fini(dev); RETURN(rc); }