From e7f17c5e0c95dba3b80e192e4ca3628cc42e64b9 Mon Sep 17 00:00:00 2001 From: Emoly Liu Date: Thu, 15 Sep 2022 09:42:47 +0800 Subject: [PATCH] LU-16154 obdclass: free inst_name correctly In functon class_config_llog_handler(), inst_name should be freed correctly before break. Signed-off-by: Emoly Liu Change-Id: I6adc0ed62c3c637237834b799f25666d0e7e1ecb Reviewed-on: https://review.whamcloud.com/48542 Reviewed-by: Andreas Dilger Tested-by: jenkins Reviewed-by: Zhenyu Xu Tested-by: Maloo Reviewed-by: Oleg Drokin --- lustre/obdclass/obd_config.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lustre/obdclass/obd_config.c b/lustre/obdclass/obd_config.c index 89dbe02..f8840b0 100644 --- a/lustre/obdclass/obd_config.c +++ b/lustre/obdclass/obd_config.c @@ -1971,16 +1971,15 @@ int class_config_llog_handler(const struct lu_env *env, libcfs_str2net(lsi->lsi_lmd->lmd_nidnet)) { CDEBUG(D_CONFIG, "skipping add_conn for %s\n", uuid_str); - rc = 0; /* No processing! */ - break; + GOTO(out_inst, rc = 0); } } OBD_ALLOC(lcfg_new, lustre_cfg_len(bufs.lcfg_bufcount, bufs.lcfg_buflen)); if (!lcfg_new) - GOTO(out, rc = -ENOMEM); + GOTO(out_inst, rc = -ENOMEM); lustre_cfg_init(lcfg_new, lcfg->lcfg_command, &bufs); lcfg_new->lcfg_num = lcfg->lcfg_num; @@ -2008,6 +2007,7 @@ int class_config_llog_handler(const struct lu_env *env, rc = class_process_config(lcfg_new); OBD_FREE(lcfg_new, lustre_cfg_len(lcfg_new->lcfg_bufcount, lcfg_new->lcfg_buflens)); +out_inst: if (inst_name) OBD_FREE(inst_name, inst_len); break; -- 1.8.3.1