Re: [PATCH v14 30/32] fs/resctrl: Hide the BMEC related files when mbm_event mode is enabled
From: Reinette Chatre
Date: Tue Jul 08 2025 - 11:26:15 EST
Hi Babu,
On 7/8/25 6:27 AM, Moger, Babu wrote:
> On 7/7/2025 5:35 PM, Moger, Babu wrote:
>> On 7/3/25 11:21, Reinette Chatre wrote:
>>> On 7/2/25 12:04 PM, Moger, Babu wrote:
>>>> On 7/2/25 12:21, Reinette Chatre wrote:
>>>>> On 7/2/25 9:42 AM, Moger, Babu wrote:
>>>>>> On 6/25/25 18:39, Reinette Chatre wrote:
>>>>>>> On 6/13/25 2:05 PM, Babu Moger wrote:
>>>>>>>> BMEC (Bandwidth Monitoring Event Configuration) and mbm_event mode do not
>>>>>>>> work simultaneously.
>>>>>>>
>>>>>>> Could you please elaborate why they do not work simultaneously?
>>>>>>
>>>>>> Changed the changelog.
>>>>>>
>>>>>> When mbm_event counter assignment mode is enabled, events are configured
>>>>>> through the "event_filter" files under
>>>>>> /sys/fs/resctrl/info/L3_MON/event_configs/.
>>>>>>
>>>>>> The default monitoring mode and with BMEC (Bandwidth Monitoring Event
>>>>>> Configuration) support, events are configured using the files
>>>>>> mbm_total_bytes_config or mbm_local_bytes_config in
>>>>>> /sys/fs/resctrl/info/L3_MON/.
>>>>>
>>>>> A reasonable question here may be why not just keep using the existing
>>>>> (BMEC supporting) event configuration files for event configuration? Why
>>>>> are new event configuration files needed?
>>>>
>>>> New interface that enables users to read and write memory transaction
>>>> events using human-readable strings, simplifying configuration and
>>>> improving usability.
>>>
>>> I find the "simplifying configuration and improving usability" a bit vague
>>> for a changelog. The cover letter already claims that ABMC and BMEC are
>>> incompatible and links to some email discussions. I think it will be helpful
>>> to summarize here why ABMC and BMEC are considered incompatible and then use
>>> that as motivation to hide BMEC. The motivation in this changelog is to
>>> "avoid confusion" but the motivation is stronger than that.
>>>
>>
>> Changed the changelog. How does this look?
>>
>> "The default monitoring mode and with BMEC (Bandwidth Monitoring Event
>> Configuration) support, events are configured using the files
>> mbm_total_bytes_config or mbm_local_bytes_config in
>> /sys/fs/resctrl/info/L3_MON/.
>>
>> When the mbm_event counter assignment mode is enabled, event configuration
>> is handled via the event_filter files under
>> /sys/fs/resctrl/info/L3_MON/event_configs/. This mode allows users to read
>> and write memory transaction events using human-readable strings, making
>> the interface easier to use and more intuitive. Going forward, this
>> mechanism can support assigning multiple counters to RMID, event pairs and
>> may be extended to allow flexible, user-defined event names.
>>
>> Given these changes, hide the BMEC-related files when the mbm_event
>> counter assignment mode is enabled. Also, update the mon_features display
>> accordingly."
>>
>
> Here is another update.
>
> fs/resctrl: Hide the BMEC related files when mbm_event mode is enabled
>
> The default monitoring mode and with BMEC (Bandwidth Monitoring Event
> Configuration) support, events are configured using the files
> mbm_total_bytes_config or mbm_local_bytes_config in
> /sys/fs/resctrl/info/L3_MON/.
>
> When the mbm_event counter assignment mode is enabled, event configuration is handled via the event_filter files under
> /sys/fs/resctrl/info/L3_MON/event_configs/. This mode enables users to
> configure memory transaction events using human-readable strings, providing a more intuitive and user-friendly interface. In the future, this mechanism could be extended to support assigning multiple counters to RMID-event pairs, as well as customizable, user-defined event names. Also, the presence of BMEC-related configuration files may cause confusion when the mbm_event counter assignment mode is enabled.
>
> To address this, these files are now hidden when the mode is active.
> Additionally, the mon_features display has been updated to reflect this
> change.
I do not find a concrete motivation in this changelog. The terms "may cause
confusion" and "providing a more intuitive and user-friendly interface." are
vague and not something that I think provides a good motivation for disabling
an entire interface.
I aim to write a draft below that I hope will help make this changelog more
convincing. Please do improve it:
fs/resctrl: Disable BMEC event configuration when mbm_event mode is enabled
The BMEC (Bandwidth Monitoring Event Configuration) feature enables per-domain
event configuration. With BMEC the MBM events are configured using
the mbm_total_bytes_config or mbm_local_bytes_config files in
/sys/fs/resctrl/info/L3_MON/ and the per-domain event configuration
affects all monitor resource groups.
The mbm_event counter assignment mode enables counters to be assigned to
RMID (i.e a monitor resource group), event pairs, with potentially unique
event configurations associated with every counter.
There may be systems that support both BMEC and mbm_event counter assignment
mode, but resctrl supporting both concurrently will present a conflicting
interface to the user with both per-domain and per RMID, event configurations
active at the same time.
mbm_event counter assignment provides most flexibility to user space and
aligns with Arm's counter support. On systems that support both, disable BMEC
event configuration when mbm_event mode is enabled by hiding the
the mbm_total_bytes_config or mbm_local_bytes_config files when mbm_event mode
is enabled. Ensure mon_features always displays accurate information about
monitor features.
Reinette