diff --git a/fs/resctrlfs.c b/fs/resctrlfs.c index 6fa02741427d83e5890af6c5f6a60fe7e4004632..10405e47aafaf42e2ea5c952469d89b7715dc0bb 100644 --- a/fs/resctrlfs.c +++ b/fs/resctrlfs.c @@ -404,11 +404,11 @@ static int resctrl_get_tree(struct fs_context *fc) ret = resctrl_id_init(); if (ret) - goto out; + goto out_schema; ret = resctrl_group_create_info_dir(resctrl_group_default.kn, &kn_info); if (ret) - goto out; + goto out_schema; if (resctrl_mon_capable) { ret = mongroup_create_dir(resctrl_group_default.kn, @@ -450,6 +450,8 @@ static int resctrl_get_tree(struct fs_context *fc) kernfs_remove(kn_mongrp); out_info: kernfs_remove(kn_info); +out_schema: + schemata_list_destroy(); out: rdt_last_cmd_clear(); mutex_unlock(&resctrl_group_mutex);