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

From: Moger, Babu
Date: Wed Jul 24 2024 - 21:23:10 EST


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@xxxxxxx> 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@xxxxxxxxxxxxxx/

--
- Babu Moger