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: 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# -Peter