diff options
author | James Morse <james.morse@arm.com> | 2021-09-17 16:59:58 +0000 |
---|---|---|
committer | Borislav Petkov <bp@suse.de> | 2021-10-06 18:45:21 +0200 |
commit | 64e87d4bd3201bf8a4685083ee4daf5c0d001452 (patch) | |
tree | 9e7fd91b089d386d996ae1b3b4a38639e4abdc4c | |
parent | 6e3cd95234dc1eda488f4f487c281bac8fef4d9b (diff) | |
download | linux-stable-64e87d4bd3201bf8a4685083ee4daf5c0d001452.tar.gz linux-stable-64e87d4bd3201bf8a4685083ee4daf5c0d001452.tar.bz2 linux-stable-64e87d4bd3201bf8a4685083ee4daf5c0d001452.zip |
x86/resctrl: Free the ctrlval arrays when domain_setup_mon_state() fails
domain_add_cpu() is called whenever a CPU is brought online. The
earlier call to domain_setup_ctrlval() allocates the control value
arrays.
If domain_setup_mon_state() fails, the control value arrays are not
freed.
Add the missing kfree() calls.
Fixes: 1bd2a63b4f0de ("x86/intel_rdt/mba_sc: Add initialization support")
Fixes: edf6fa1c4a951 ("x86/intel_rdt/cqm: Add RMID (Resource monitoring ID) management")
Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Acked-by: Reinette Chatre <reinette.chatre@intel.com>
Cc: <stable@vger.kernel.org>
Link: https://lkml.kernel.org/r/20210917165958.28313-1-james.morse@arm.com
-rw-r--r-- | arch/x86/kernel/cpu/resctrl/core.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/resctrl/core.c b/arch/x86/kernel/cpu/resctrl/core.c index 4b8813bafffd..b5de5a6c115c 100644 --- a/arch/x86/kernel/cpu/resctrl/core.c +++ b/arch/x86/kernel/cpu/resctrl/core.c @@ -532,6 +532,8 @@ static void domain_add_cpu(int cpu, struct rdt_resource *r) } if (r->mon_capable && domain_setup_mon_state(r, d)) { + kfree(hw_dom->ctrl_val); + kfree(hw_dom->mbps_val); kfree(d); return; } |