Messages in this thread | | | Date | Mon, 17 Jul 2023 18:06:29 +0100 | Subject | Re: [PATCH v4 12/24] x86/resctrl: Make resctrl_arch_rmid_read() retry when it is interrupted | From | James Morse <> |
| |
Hi Peter,
On 6/8/23 09:53, Peter Newman wrote: > On Thu, May 25, 2023 at 8:03 PM James Morse <james.morse@arm.com> wrote: >> >> resctrl_arch_rmid_read() could be called by resctrl in process context, >> and then called by the PMU driver from irq context on the same CPU. > > Will there be x86 PMU changes to do this or is this only ARM? I just > want to make sure the x86 resctrl_arch_rmid_read() changes are > actually needed.
I plan to add that as an uncore 'resctrl_pmu' that works for all architectures by calling resctrl_arch_rmid_read(). Having that be specific to arm64 isn't helpful to user-space. Perf is the natural home for these counters, and it will make it easier to add per-architecture (or per-soc) counters, without having to teach resctrl about them.
This patch moved to be 'this' side of the 'move to /fs/resctrl' because this can happen without the PMU changes. If a NOHZ_FULL CPU makes a syscall to read a counter, that happens in process context, if a CPU in another domain wants to read the same counter, it has to send an IPI which might target the same CPU.
(I've not investigated whether this is an existing bug)
Thanks,
James
| |