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-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=5914255b823f32ce0b075988cd7fc80536d344c7;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. Lustre-change: https://review.whamcloud.com/45063 Lustre-commit: 7cf10b90d62256aa4d177486ff13bd61dfb9a5ff Fixes: 3e38436dc09 ("LU-2059 llog: MGC to use OSD API for backup logs") Signed-off-by: Andreas Dilger Change-Id: I921dde4e9202733874d8e7f980e95af23739a655 Reviewed-by: James Simmons Reviewed-by: Arshad Hussain Signed-off-by: Minh Diep Reviewed-on: https://review.whamcloud.com/45330 Tested-by: jenkins Tested-by: Maloo --- diff --git a/lustre/mgc/mgc_request.c b/lustre/mgc/mgc_request.c index 00ee152..772a9cc 100644 --- a/lustre/mgc/mgc_request.c +++ b/lustre/mgc/mgc_request.c @@ -795,7 +795,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) @@ -834,6 +834,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); }