arm_mpam: resctrl: Correct check that existing class is L3

The class used to back mbm_total_bytes can be either at the L3 or the
memory. If a platform had candidate classes at both the memory and the L3
then, as the check for whether the existing class is L3 or not in
counter_update_class() is broken, the class that will be chosen depends on
which order the classes are considered and so the probe order.

Fix the check.

Fixes: 1458c4f053 ("arm_mpam: resctrl: Add support for csu counters")
Tested-by: Gavin Shan <gshan@redhat.com>
Signed-off-by: Ben Horgan <ben.horgan@arm.com>
Reviewed-by: Gavin Shan <gshan@redhat.com>
Reviewed-by: James Morse <james.morse@arm.com>
Signed-off-by: James Morse <james.morse@arm.com>
This commit is contained in:
Ben Horgan 2026-09-17 15:56:13 +01:00 committed by James Morse
parent 4643335d58
commit 724eae25d1

View File

@ -1076,7 +1076,7 @@ static void counter_update_class(enum resctrl_event_id evt_id,
struct mpam_class *existing_class = mpam_resctrl_counters[evt_id].class;
if (existing_class) {
if (class->level == 3) {
if (existing_class->level == 3) {
pr_debug("Existing class is L3 - L3 wins\n");
return;
}