Re: [PATCH 18/33] arm_mpam: Reset MSC controls from cpuhp callbacks

From: Gavin Shan

Date: Sun Nov 09 2025 - 17:11:58 EST


On 11/7/25 10:34 PM, Ben Horgan wrote:
From: James Morse <james.morse@xxxxxxx>

When a CPU comes online, it may bring a newly accessible MSC with
it. Only the default partid has its value reset by hardware, and
even then the MSC might not have been reset since its config was
previously dirtied. e.g. Kexec.

Any in-use partid must have its configuration restored, or reset.
In-use partids may be held in caches and evicted later.

MSC are also reset when CPUs are taken offline to cover cases where
firmware doesn't reset the MSC over reboot using UEFI, or kexec
where there is no firmware involvement.

If the configuration for a RIS has not been touched since it was
brought online, it does not need resetting again.

To reset, write the maximum values for all discovered controls.

CC: Rohit Mathew <Rohit.Mathew@xxxxxxx>
Signed-off-by: James Morse <james.morse@xxxxxxx>
Reviewed-by: Fenghua Yu <fenghuay@xxxxxxxxxx>
Tested-by: Fenghua Yu <fenghuay@xxxxxxxxxx>
Reviewed-by: Jonathan Cameron <jonathan.cameron@xxxxxxxxxx>
Reviewed-by: Shaopeng Tan <tan.shaopeng@xxxxxxxxxxxxxx>
Tested-by: Shaopeng Tan <tan.shaopeng@xxxxxxxxxxxxxx>
Tested-by: Peter Newman <peternewman@xxxxxxxxxx>
Signed-off-by: Ben Horgan <ben.horgan@xxxxxxx>
---
Changes since v3:
Add tags - thanks!
---
drivers/resctrl/mpam_devices.c | 109 ++++++++++++++++++++++++++++++++
drivers/resctrl/mpam_internal.h | 3 +
2 files changed, 112 insertions(+)


Reviewed-by: Gavin Shan <gshan@xxxxxxxxxx>