Re: [PATCH v5 20/20] x86/resctrl: Introduce interface to modify assignment states of the groups

Moger, Babu
2024-08-01T19:40:48Z

Hi Reinette,

On 8/1/24 13:56, Reinette Chatre wrote:
> Hi Babu and Peter,
>
> On 7/25/24 10:28 AM, Moger, Babu wrote:
>> Hi Peter,
>>
>> On 7/25/24 12:11, Peter Newman wrote:
>>> Hi Babu,
>>>
>>> On Wed, Jul 24, 2024 at 6:23 PM Moger, Babu <bmoger@amd.com> wrote:
>>>>
>>>> Hi Peter,
>>>>
>>>> On 7/24/2024 7:03 PM, Peter Newman wrote:
>>>>> Hi Babu,
>>>>>
>>>>> On Wed, Jul 3, 2024 at 2:51 PM Babu Moger <babu.moger@amd.com> wrote:
>>>>>>
>>>>>> Introduce the interface to enable events in ABMC mode.
>>>>>>
>>>>>> Events can be enabled or disabled by writing to file
>>>>>> /sys/fs/resctrl/info/L3_MON/mbm_control
>>>>>>
>>>>>> Format is similar to the list format with addition of op-code for the
>>>>>> assignment operation.
>>>>>>    "<CTRL_MON group>/<MON group>/<op-code><flags>"
>>>>>>
>>>>>> Format for specific type of groups:
>>>>>>
>>>>>>    * Default CTRL_MON group:
>>>>>>            "//<domain_id><op-code><flags>"
>>>>>>
>>>>>>    * Non-default CTRL_MON group:
>>>>>>            "<CTRL_MON group>//<domain_id><op-code><flags>"
>>>>>>
>>>>>>    * Child MON group of default CTRL_MON group:
>>>>>>            "/<MON group>/<domain_id><op-code><flags>"
>>>>>>
>>>>>>    * Child MON group of non-default CTRL_MON group:
>>>>>>            "<CTRL_MON group>/<MON group>/<domain_id><op-code><flags>"
>>>>>
>>>>> Just a reminder, Reinette and I had discussed[1] omitting the
>>>>> domain_id for performing the same operation on all domains.
>>>>
>>>> Yes. I remember. Lets refresh our memory.
>>>>>
>>>>> I would really appreciate this, otherwise our most typical operations
>>>>> could be really tedious and needlessly serialized.
>>>>
>>>>>
>>>>> # cat mbm_control
>>>>> //0=tl;1=tl;2=tl;3=tl;4=tl;5=tl;6=tl;7=tl;8=tl;9=tl;10=tl;11=tl;12=tl;13=tl;14=tl;15=tl;16=tl;17=tl;18=tl;19=tl;20=tl;21=tl;22=tl;23=tl;24=tl;25=tl;26=tl;27=tl;28=tl;29=tl;30=tl;31=tl;
>>>>> # echo '//-l' > mbm_control
>>>>
>>>> What is the expectation here?
>>>> You want to unassign local event on all the domains?
>>>
>>> Correct.
>>>
>>>>
>>>> Domain id makes it easy to parse the command. Without that it parsing
>>>> code becomes  messy.
>>>>
>>>> How about something like this? We can use the max domain id to mean all
>>>> the domains. In the above case there are 32 domains(0-31). 32 is total
>>>> number of domains. We can get that details looking through all the
>>>> domains. We can print that detail when we list it.
>>>
>>> This sounds like only a minor simplification to the parsing code. It
>>> seems like it would be easy to determine if the final '/' is
>>> immediately followed by an opcode (+-=_) rather than a number.
>>
>> Ok. Will try to get that working. Will let you know if there are
>> complexities with that.--
>> Thanks
>> Babu Moger
>
> Dave suggested [1]  "*" to indicate "all domains". This seems an intuitive
> addition to the interface to accomplish this goal.

Yes. that is correct. Will try to address that in v6.

--
Thanks
Babu Moger