Re: [PATCH v2 13/29] arm_mpam: Probe the hardware features resctrl supports

James Morse
2025-09-29T17:45:08Z

Hi Jonathan,

On 11/09/2025 16:29, Jonathan Cameron wrote:
> On Wed, 10 Sep 2025 20:42:53 +0000
> James Morse <james.morse@arm.com> wrote:
>
>> Expand the probing support with the control and monitor types
>> we can use with resctrl.
>>
>> CC: Dave Martin <Dave.Martin@arm.com>
>> Signed-off-by: James Morse <james.morse@arm.com>
>
> A few trivial things inline.
> LGTM
> Reviewed-by: Jonathan Cameron <jonathan.cameron@huawei.com>

Thanks!

>> @@ -592,6 +736,7 @@ static int mpam_msc_hw_probe(struct mpam_msc *msc)
>> mutex_lock(&msc->part_sel_lock);
>> idr = mpam_msc_read_idr(msc);
>> mutex_unlock(&msc->part_sel_lock);
>> +
> Stray change - push it to earlier patch.

Fixed,

>> diff --git a/drivers/resctrl/mpam_internal.h b/drivers/resctrl/mpam_internal.h
>> index 4cc44d4e21c4..5ae5d4eee8ec 100644
>> --- a/drivers/resctrl/mpam_internal.h
>> +++ b/drivers/resctrl/mpam_internal.h
>> @@ -112,6 +112,55 @@ static inline void mpam_mon_sel_lock_init(struct mpam_msc *msc)
>> raw_spin_lock_init(&msc->_mon_sel_lock);
>> }
>>
>> +/*
>> + * When we compact the supported features, we don't care what they are.
>> + * Storing them as a bitmap makes life easy.
>> + */
>> +typedef u16 mpam_features_t;
>
> Maybe use a bitmap type and avoid the need to be careful on sizing etc?

That would be unsigned long at a minimum, which is four times larger than needed.
As there is a build-time check, I'm not worried about this ever being wrong...

>> +
>> +/* Bits for mpam_features_t */
>> +enum mpam_device_features {
>> + mpam_feat_ccap_part = 0,
>> + mpam_feat_cpor_part,
>> + mpam_feat_mbw_part,
>> + mpam_feat_mbw_min,
>> + mpam_feat_mbw_max,
>> + mpam_feat_mbw_prop,
>> + mpam_feat_msmon,
>> + mpam_feat_msmon_csu,
>> + mpam_feat_msmon_csu_capture,
>> + mpam_feat_msmon_csu_hw_nrdy,
>> + mpam_feat_msmon_mbwu,
>> + mpam_feat_msmon_mbwu_capture,
>> + mpam_feat_msmon_mbwu_rwbw,
>> + mpam_feat_msmon_mbwu_hw_nrdy,
>> + mpam_feat_msmon_capt,
>> + MPAM_FEATURE_LAST,
>
> If it's always meant to be LAST, I'd drop the trailing comma.

Sure. Full-stops for enums!

Thanks,

James