From: Andreas Dilger Date: Mon, 27 Sep 2021 18:29:58 +0000 (-0600) Subject: LU-15038 mgc: release cl_mgc_mutex on error X-Git-Tag: 2.14.56~170 X-Git-Url: https://git.whamcloud.com/gitweb?a=commitdiff_plain;h=refs%2Fchanges%2F63%2F45063%2F3;p=fs%2Flustre-release.git LU-15038 mgc: release cl_mgc_mutex on error If local_oid_storage_init() returns an error, the cl_mgc_mutex() should be released. Fixes: 3e38436dc09 ("LU-2059 llog: MGC to use OSD API for backup logs") Signed-off-by: Andreas Dilger Change-Id: I921dde4e9202733874d8e7f980e95af23739a655 Reviewed-on: https://review.whamcloud.com/45063 Tested-by: jenkins Reviewed-by: James Simmons Reviewed-by: Arshad Hussain Tested-by: Maloo Reviewed-by: Oleg Drokin --- diff --git a/lustre/mgc/mgc_request.c b/lustre/mgc/mgc_request.c index 96973e1..000937c 100644 --- a/lustre/mgc/mgc_request.c +++ b/lustre/mgc/mgc_request.c @@ -797,7 +797,7 @@ static int mgc_fs_setup(const struct lu_env *env, struct obd_device *obd, rc = local_oid_storage_init(env, lsi->lsi_dt_dev, &fid, &cli->cl_mgc_los); if (rc) - RETURN(rc); + GOTO(out_mutex, rc); rc = dt_root_get(env, lsi->lsi_dt_dev, &rfid); if (rc) @@ -836,6 +836,7 @@ out_llog: out_los: if (rc < 0) { local_oid_storage_fini(env, cli->cl_mgc_los); +out_mutex: cli->cl_mgc_los = NULL; mutex_unlock(&cli->cl_mgc_mutex); }