Hi Peter, On 11/4/24 08:14, Peter Newman wrote: > Hi Babu, > > On Wed, Oct 30, 2024 at 12:24 AM Babu Moger <babu.moger@xxxxxxx> wrote: >> >> Provide the interface to display the number of free monitoring counters >> available for assignment in each doamin when mbm_cntr_assign is supported. >> >> Signed-off-by: Babu Moger <babu.moger@xxxxxxx> >> --- >> v9: New patch. >> --- >> Documentation/arch/x86/resctrl.rst | 4 ++++ >> arch/x86/kernel/cpu/resctrl/monitor.c | 1 + >> arch/x86/kernel/cpu/resctrl/rdtgroup.c | 33 ++++++++++++++++++++++++++ >> 3 files changed, 38 insertions(+) >> >> diff --git a/Documentation/arch/x86/resctrl.rst b/Documentation/arch/x86/resctrl.rst >> index 2f3a86278e84..2bc58d974934 100644 >> --- a/Documentation/arch/x86/resctrl.rst >> +++ b/Documentation/arch/x86/resctrl.rst >> @@ -302,6 +302,10 @@ with the following files: >> memory bandwidth tracking to a single memory bandwidth event per >> monitoring group. >> >> +"available_mbm_cntrs": >> + The number of free monitoring counters available assignment in each domain >> + when the architecture supports mbm_cntr_assign mode. > > It seems you need to clarify that counters are only available to a > domain when they're available in all domains: Yes. Makes sense. > > resctrl# for i in `seq 100`; do >> mkdir mon_groups/m${i} >> done > resctrl# cat info/L3_MON/available_mbm_cntrs > 0=0;1=0;2=0;3=0;4=0;5=0;6=0;7=0;8=0;9=0;10=0;11=0;12=0;16=0;17=0;18=0;19=0;20=0;21=0;22=0;23=0;24=0;25=0;26=0;27=0;28=0 > > resctrl# cd info/L3_MON/ > L3_MON# echo '/m1/0=_' > mbm_assign_control > L3_MON# cat available_mbm_cntrs > 0=2;1=0;2=0;3=0;4=0;5=0;6=0;7=0;8=0;9=0;10=0;11=0;12=0;16=0;17=0;18=0;19=0;20=0;21=0;22=0;23=0;24=0;25=0;26=0;27=0;28=0 > L3_MON# echo '/m16/0+t' > mbm_assign_control > -bash: echo: write error: Invalid argument > L3_MON# cat ../last_cmd_status > Out of MBM assignable counters > Assign operation '+t' failed on the group /m16/ > > L3_MON# rmdir ../../mon_groups/m1 > L3_MON# cat available_mbm_cntrs > 0=2;1=2;2=2;3=2;4=2;5=2;6=2;7=2;8=2;9=2;10=2;11=2;12=2;16=2;17=2;18=2;19=2;20=2;21=2;22=2;23=2;24=2;25=2;26=2;27=2;28=2 > L3_MON# echo '/m16/0+t' > mbm_assign_control > L3_MON# > Test case looks good to me. Thanks for trying out. -- Thanks Babu Moger