Re: [PATCH v2 4/6] fs/resctrl: Disallow the software controller when mbm counters are assignable
From: Reinette Chatre
Date: Wed Mar 18 2026 - 18:17:57 EST
Hi Ben,
On 3/18/26 8:44 AM, Ben Horgan wrote:
>
> Apologies if the commit message aren't clear. I do see that I was confused in this one between
> counters being assignable, i.e. mbm_event mode possible, and the user being the being able to
> assign and unassign counters, i.e. mbm_event mode enabled. Do you prefer this as a commit message?
Since MPAM does not support switching between assignment modes it sounds as though MPAM
treats support of assignable counters and enabling of assignable counters as
synonyms. As you hint in the new changelog there is a difference between what is technically
most correct and accurate and what is most pragmatic. It is ok to start with the pragmatic
approach but please do not disguise it as the one and only correct solution.
So, specifically, I think it is ok to use the check of mbm_cntr_assignable as you have in this
patch since it eliminates the unnecessary (because no architecture would run this code)
complication of additional post-mount checks of assignable mode and software controller
interactions. Please just be clear about the trade-offs and decisions in changelog.
>
> fs/resctrl: Disallow the software controller when using mbm_event mode
>
> The software controller requires that there is one MBM counter, for each
> domain, per monitor group that is assigned to the event backing the
> software controller (the mba_MBps_event). When mbm_event mode is in use
> this event backing cannot be guaranteed as there may be insufficient
> counters, the user may unassign the counter or mbm_assign_on_mkdir may be
> set to 0.
>
> Currently, only AMD systems support counter assignment but the MBA is non
> linear and so the software controller is never supported anyway. For MPAM
> systems the MBA is linear and it could support the software controller.
> Adding support would require guaranteeing that the events backing the
> software controller are always assigned. In order to support mbm_event mode
> for MPAM, which is needed to support memory bandwidth monitors, MBM, on
> platforms with fewer bandwidth counters (per domain) than monitor groups,
> take the pragmatic approach and fail the mount if the user requests the
This changelog is a bit hard to parse ... note how it jumps from "Adding
support would require guaranteeing that the events backing the software
controller are always assigned." to "take the pragmatic approach and fail
the mount if the user requests the software controller."
> software controller, the mba_MBps option, when the mbm_event mode is
> enabled. Furthermore, disable switching to mbm_event mode when the software
> controller is enabled. If, in the future, a way for mbm_event mode and the
> software controller to function at the same time is introduced these
> restrictions can be adapted.
>
>>
>> Finally, considering the message to user space:
>> "mba_MBps requires dedicated MBM counters and linear scale MBA at L3 scope"
>> upon reading above a user may attempt to explore how to solve the mount issue by fulfilling
>> the requirement of "dedicated MBM counters". How should a user interpred "dedicated MBM counters"?
>> It may be confusing to a user when a system indeed has sufficient counters but the mount
>> still fails.
>>
>> How about instead something like below:
>> "mba_MBps requires MBM (assignable counters not supported) and linear scale MBA at L3 scope"
>> it is quite long so open to ideas.
>
> How about mentioning the mbm_assign_mode to be more explicit. Maybe this?
> "mba_MBps requires MBM (mbm_event mode not supported) and linear scale MBA at L3 scope"
Sounds good.
Reinette