diff options
author | James Morse <james.morse@arm.com> | 2020-02-21 16:21:05 +0000 |
---|---|---|
committer | Borislav Petkov <bp@suse.de> | 2020-04-17 19:35:01 +0200 |
commit | 9fe0450785abbc04b0ed5d3cf61fcdb8ab656b4b (patch) | |
tree | 1baece2c2f27fde5de61b47135062863a010985d /arch/x86/kernel/cpu/resctrl/rdtgroup.c | |
parent | x86/resctrl: Fix invalid attempt at removing the default resource group (diff) | |
download | linux-dev-9fe0450785abbc04b0ed5d3cf61fcdb8ab656b4b.tar.xz linux-dev-9fe0450785abbc04b0ed5d3cf61fcdb8ab656b4b.zip |
x86/resctrl: Preserve CDP enable over CPU hotplug
Resctrl assumes that all CPUs are online when the filesystem is mounted,
and that CPUs remember their CDP-enabled state over CPU hotplug.
This goes wrong when resctrl's CDP-enabled state changes while all the
CPUs in a domain are offline.
When a domain comes online, enable (or disable!) CDP to match resctrl's
current setting.
Fixes: 5ff193fbde20 ("x86/intel_rdt: Add basic resctrl filesystem support")
Suggested-by: Reinette Chatre <reinette.chatre@intel.com>
Signed-off-by: James Morse <james.morse@arm.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Cc: <stable@vger.kernel.org>
Link: https://lkml.kernel.org/r/20200221162105.154163-1-james.morse@arm.com
Diffstat (limited to '')
-rw-r--r-- | arch/x86/kernel/cpu/resctrl/rdtgroup.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/resctrl/rdtgroup.c b/arch/x86/kernel/cpu/resctrl/rdtgroup.c index 9d4e73a9b5a9..5a359d9fcc05 100644 --- a/arch/x86/kernel/cpu/resctrl/rdtgroup.c +++ b/arch/x86/kernel/cpu/resctrl/rdtgroup.c @@ -1859,6 +1859,19 @@ static int set_cache_qos_cfg(int level, bool enable) return 0; } +/* Restore the qos cfg state when a domain comes online */ +void rdt_domain_reconfigure_cdp(struct rdt_resource *r) +{ + if (!r->alloc_capable) + return; + + if (r == &rdt_resources_all[RDT_RESOURCE_L2DATA]) + l2_qos_cfg_update(&r->alloc_enabled); + + if (r == &rdt_resources_all[RDT_RESOURCE_L3DATA]) + l3_qos_cfg_update(&r->alloc_enabled); +} + /* * Enable or disable the MBA software controller * which helps user specify bandwidth in MBps. |