[PATCH v1 00/11] arm_mpam: minor fixes at v7.2
From: Ben Horgan
Date: Fri Jul 10 2026 - 08:16:10 EST
This is a bunch of small fixes for hypothetical problems in the driver. They
were found by a mixture of messing around with a software model, inspection and
llm review.
The first two patches ensure the error interrupt isn't accidentally disabled
when register state is lost. Patch 3 keeps the feature accounting correct but
has no functional change. Patches 4 to 7 fix mbwu save/restore but this is not
relied on as we plan to just use resctrl assigned counters and these are
unassigned when a domain goes offline. Also, MSC afffinity of a region smaller
than a resctrl domain has not been seen. Patch 8 makes read_mon_cdp_safe()
behaviour the same for cdp_enabled and not. Patch 9 fixes an infinite loop in
a system using all the PARTIDs which is much bigger than anything than anything
I've seen. Patch 10 stops some allocations failing on similiarly big systems.
Based on v7.2-rc2
Ben Horgan (11):
arm_mpam: Move MPAMF_ECR write helpers to allow reuse
arm_mpam: Restore the error interrupt enable from mpam_cpu_online()
arm_mpam: Set mpam_feat_msmon_mbwu_31counter when there are bandwidth
counters
arm_mpam: Add missing mon_sel locking in MBWU restore
arm_mpam: Ensure MBWU counters are reset on restore
arm_mpam: Use __ris_msmon_read() for saving MBWU state
arm_mpam: Initialize all of struct mon_read in
mpam_restore_mbwu_state()
arm_mpam: resctrl: Correct check that existing class is L3
arm_mpam: resctrl: Make read_mon_cdp_safe() self consistent
arm_mpam: Don't loop forever if there is the maximum possible amount
of PARTIDs
arm_mpam: Switch to kvzmalloc_objs() for allocation of component cfg
drivers/resctrl/mpam_devices.c | 124 ++++++++++++++++++++-------------
drivers/resctrl/mpam_resctrl.c | 4 +-
2 files changed, 76 insertions(+), 52 deletions(-)
--
2.43.0