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

Moger, Babu
2024-07-25T01:22:58Z

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?

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.

# cat mbm_control
//0=tl;1=tl;2=tl;3=tl;... 31=tl;
Max domain id is 31. Use domain-id 32 to apply the flags on all the
domains.

echo '//32-l' > mbm_control

There is only on syscall but IPIs will be sent to all the domains.

Any other ideas?

> -bash: echo: write error: Invalid argument
> # cat ../last_cmd_status
> Missing domain id
>
> If you can't get to it in this series, I'll push a
> scalability-oriented series after the basic assignment support is
> merged.

Lets try to get this resolved in this series.

>
> Thanks!
> -Peter
>
> [1] https://lore.kernel.org/lkml/CALPaoChcJq5zoPchB2j0aM+nZpQe1xoo7w2QQUjtH+c58Yyxag@mail.gmail.com/

--
- Babu Moger