Re: [PATCH v3 31/47] arm_mpam: resctrl: Pre-allocate assignable monitors

Ben Horgan
2026-01-19T20:34:13Z

Hi Shaopeng,

On 1/16/26 11:04, Ben Horgan wrote:
> Hi Shaopeng,
>
> On 1/16/26 10:34, Shaopeng Tan (Fujitsu) wrote:
>> Hello Ben,
>>
>>> From: James Morse <james.morse@arm.com>
>>>
>>> When there are not enough monitors, MPAM is able to emulate ABMC by making
>>> a smaller number of monitors assignable. These monitors still need to be
>>> allocated from the driver, and mapped to whichever control/monitor group
>>> resctrl wants to use them with.
>>>
>>> Add a second array to hold the monitor values indexed by resctrl's cntr_id.
>>>
>>> When CDP is in use, two monitors are needed so the available number of
>>> counters halves. Platforms with one monitor will have zero monitors when
>>> CDP is in use.
>>>
>>> Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>
>>> Signed-off-by: James Morse <james.morse@arm.com>
>>> Signed-off-by: Ben Horgan <ben.horgan@arm.com>
> [...]
>>> +bool resctrl_arch_mbm_cntr_assign_enabled(struct rdt_resource *r)
>>> +{
>>> + if (r != &mpam_resctrl_controls[RDT_RESOURCE_L3].resctrl_res)
>>> + return false;
>>> +
>>> + return mpam_resctrl_abmc_enabled();
>>> +}
>>> +
>>> +int resctrl_arch_mbm_cntr_assign_set(struct rdt_resource *r, bool enable)
>>> +{
>>> + return -EINVAL;
>>> +}
>>
>> $ echo "default" | sudo tee /sys/fs/resctrl/info/L3_MON/mbm_assign_mode
>> default
>> tee: /sys/fs/resctrl/info/L3_MON/mbm_assign_mode:Invalid argument
>> "return -EOPNOTSUPP;" might be better.
>
> I'll keep this as -EINVAL in the case when 'enable' matches the current mode
> and change it to return 0 when there is nothing to change. This will match the

Actually, resctl_arch_cntr_assign_set() only gets called on an attempt
to change the value so I'll keep it as is.

> behaviour once this is handled in resctrl. See the outcome of the discussion on
> this resctrl patch [1] Note, that I haven't yet updated the patch to match the
> discussion. Any objection?
>
> [1] https://lore.kernel.org/lkml/bf8bb682-6a4d-4f39-916c-952719fcf48d@arm.com/
>
> Thanks,
>
> Ben
>
>

Thanks,

Ben