Messages in this thread | | | Date | Fri, 28 Jul 2023 17:29:40 +0100 | Subject | Re: [PATCH v4 21/24] x86/resctrl: Allow overflow/limbo handlers to be scheduled on any-but cpu | From | James Morse <> |
| |
Hi Shaopeng Tan,
On 09/06/2023 12:10, Shaopeng Tan (Fujitsu) wrote: >> When a CPU is taken offline resctrl may need to move the overflow or limbo >> handlers to run on a different CPU. >> >> Once the offline callbacks have been split, cqm_setup_limbo_handler() will be >> called while the CPU that is going offline is still present in the cpu_mask. >> >> Pass the CPU to exclude to cqm_setup_limbo_handler() and >> mbm_setup_overflow_handler(). These functions can use a variant of >> cpumask_any_but() when selecting the CPU. -1 is used to indicate no CPUs >> need excluding. >> >> A subsequent patch moves these calls to be before CPUs have been removed, >> so this exclude_cpus behaviour is temporary.
>> diff --git >> a/arch/x86/kernel/cpu/resctrl/monitor.c >> b/arch/x86/kernel/cpu/resctrl/monitor.c >> index ced933694f60..ae02185f3354 100644 >> --- a/arch/x86/kernel/cpu/resctrl/monitor.c >> +++ b/arch/x86/kernel/cpu/resctrl/monitor.c >> @@ -875,9 +895,15 @@ void mbm_setup_overflow_handler(struct rdt_domain >> *dom, unsigned long delay_ms) >> */ >> if (!resctrl_mounted || !resctrl_arch_mon_capable()) >> return; >> - cpu = cpumask_any_housekeeping(&dom->cpu_mask); >> + if (exclude_cpu == -1) >> + cpu = cpumask_any_housekeeping(&dom->cpu_mask); > > Should RESCTRL_PICK_ANY_CPU be used instead of -1?
Yup, that would be more readable. I did this for cqm_setup_limbo_handler(), but for some reason missed this one.
Thanks,
James
| |