public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: "Luck, Tony" <tony.luck@intel.com>
To: Reinette Chatre <reinette.chatre@intel.com>
Cc: Aaron Tomlin <atomlin@atomlin.com>,
	"Moger, Babu" <bmoger@amd.com>,
	"Dave.Martin@arm.com" <Dave.Martin@arm.com>,
	"james.morse@arm.com" <james.morse@arm.com>,
	"babu.moger@amd.com" <babu.moger@amd.com>,
	"tglx@linutronix.de" <tglx@linutronix.de>,
	"mingo@redhat.com" <mingo@redhat.com>,
	"bp@alien8.de" <bp@alien8.de>,
	"dave.hansen@linux.intel.com" <dave.hansen@linux.intel.com>,
	"sean@ashe.io" <sean@ashe.io>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v2 3/3] x86/resctrl: Add "*" shorthand to set minimum io_alloc CBM for all domains
Date: Fri, 19 Dec 2025 15:05:34 -0800	[thread overview]
Message-ID: <aUXaPsCeikFVy6ra@agluck-desk3> (raw)
In-Reply-To: <9967e08c-3aa4-47fc-9846-7f36a858df41@intel.com>

On Fri, Dec 19, 2025 at 02:00:32PM -0800, Reinette Chatre wrote:
> Hi Tony,
> 
> On 12/19/25 12:42 PM, Luck, Tony wrote:
> > On Fri, Dec 19, 2025 at 10:28:32AM -0800, Reinette Chatre wrote:
> >> Hi Aaron and Tony,
> >>
> >> On 12/18/25 4:44 PM, Aaron Tomlin wrote:
> >>> On Thu, Dec 18, 2025 at 02:59:59PM -0800, Reinette Chatre wrote:
> >>>> If I remember correctly the idea was to limit this feature to io_alloc to
> >>>> avoid needing to deal with L2 asymmetric domains [1].
> >>>
> >>> Hi Reinette,
> >>>
> >>> You are quite right; I am in complete agreement with your assessment. The
> >>> primary intention behind limiting the scope to io_alloc was indeed to avoid
> >>> the complexities associated with L2 asymmetric domains.
> >>>
> >>> Are we all in alignment to focus this feature entirely on io_alloc for the
> >>> time being? If so, I will be pleased to prepare a follow-up series that
> >>
> >> From my side I am ok to limit this to io_alloc. Of course, this does not prevent
> >> cache allocation from supporting this syntax in the future.
> >>
> >> Tony: did you perhaps imply with examples in [2] that '*' only be supported by
> >> L3 and MB, not L2? Can it be guaranteed that L3 will never be asymmetric? Not that
> >> it is a blocker though, as discussed earlier there are ways [3] to support
> > 
> > I'd forgotten the L2 asymmetry issue. If we wanted to enable "*" more
> > generally, then resctrl would have to limit it to symmetric resources
> > or to allow setting values that work for all domains in an asymmetric
> > resource).  But that seems more complexity in the kernel for something
> > than can easily be handled in user space. E.g. to reset L3 to ffff
> > 
> > # sed -n -e '/L3:/s/\(=[0-9a-f][0-9a-f]*\)/=ffff/gp' schemata > schemata
> 
> ack. 
> 
> Can I interpret this as you being ok to limit support for '*' syntax to io_alloc (for now?)?
> As I understand the intended implementation discussed here will indeed just allow setting values
> that will work for all domains ... all or nothing. So, if L3 does become asymmetric along the
> way then the implementation does seem to remain reasonable. 

I still don't see a good reason for the kernel to handle any of this.

Having some resctrl control files accept wildcards while others don't
seems like a confusing interface. Is there something I'm missing that
makes io_alloc harder for users to handle than L3 or MB in schemata?

Babu's simpler implementation for io_alloc makes me more comfortable
with this. But I'm still unconvinced that wildcards must be handled
in kernel code.

> 
> >> '*' when domains may be asymmetric. That proposal is only reasonable if considering the
> >> feature as "let user set same CBM on all domains" that just happens to support the "reset
> >> to min" use case for L3 io_alloc. I assume even on asymmetric domains the min would be the
> >> same? If there is indeed a requirement to support "reset to defaults" for general cache
> >> allocation then this feature would not work for asymmetric domains as you highlighted in [4].
> > 
> >> Although, a "reset to defaults" for cache allocation use case may be better handled by
> >> removing and recreating the resource group since the defaults will take into account
> >> any exclusive allocations?
> > 
> > Removing the directory would free the RMID and allocate a new one when you
> > recreated it. Losing cache occupancy information completely, and disturbing
> > memory bandwidth monitoring. Also leaving the user to hunt down tasks
> > that were reassigned to the default CLOS and reassign them. So too many
> > side effects.
> 
> I agree. Even so, without knowing more details about use case it is difficult to reason about
> user space expectations here. This is regarding a "reset to defaults" use case that was raised in
> [4]. Did you raise that concern based on insights into requests from users to support this?
> I think we would need to create new syntax if resctrl needs to support such use case.

I don't have any requests from users.

> 
> Reinette
> 
> 
> >>
> >> Reinette
> >>
> >>
> >>> reflects this consensus once our wider discussion has concluded.
> >>>
> >>>>
> >>>> [1] https://lore.kernel.org/lkml/SJ1PR11MB60833A27A1B8057CDDFB1B2BFCCFA@SJ1PR11MB6083.namprd11.prod.outlook.com/
> >> [2] https://lore.kernel.org/all/SJ1PR11MB6083CCA2A7904E459B1AA35DFCA8A@SJ1PR11MB6083.namprd11.prod.outlook.com/
> >> [3] https://lore.kernel.org/lkml/f4a043d2-9cb0-41c9-a45d-31f96fd007d5@amd.com/
> >> [4] https://lore.kernel.org/lkml/SJ1PR11MB60836AB4270419338FBB4D1EFCCEA@SJ1PR11MB6083.namprd11.prod.outlook.com/
> > 
> > -Tony
> 

-Tony

  reply	other threads:[~2025-12-19 23:05 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-15 23:02 [PATCH v2 0/3] x86/resctrl: Add "*" shorthand to set minimum io_alloc CBM for all domains Aaron Tomlin
2025-12-15 23:02 ` [PATCH v2 1/3] fs/resctrl: Add helpers to check io_alloc support and enabled state Aaron Tomlin
2025-12-17  5:01   ` Reinette Chatre
2025-12-18 23:22     ` Aaron Tomlin
2025-12-19 17:05       ` Reinette Chatre
2025-12-25 22:23         ` Aaron Tomlin
2025-12-15 23:02 ` [PATCH v2 2/3] fs/resctrl: Return -EINVAL for a missing seq_show implementation Aaron Tomlin
2025-12-17  5:02   ` Reinette Chatre
2025-12-18 23:12     ` Aaron Tomlin
2025-12-15 23:02 ` [PATCH v2 3/3] x86/resctrl: Add "*" shorthand to set minimum io_alloc CBM for all domains Aaron Tomlin
2025-12-17  5:53   ` Reinette Chatre
2025-12-19  0:21     ` Aaron Tomlin
2025-12-18 21:32   ` Moger, Babu
2025-12-18 21:49     ` Luck, Tony
2025-12-18 21:56       ` Moger, Babu
2025-12-19  0:31         ` Aaron Tomlin
2025-12-19  0:40           ` Moger, Babu
2025-12-18 22:59       ` Reinette Chatre
2025-12-19  0:44         ` Aaron Tomlin
2025-12-19 18:28           ` Reinette Chatre
2025-12-19 20:42             ` Luck, Tony
2025-12-19 22:00               ` Reinette Chatre
2025-12-19 23:05                 ` Luck, Tony [this message]
2025-12-25 22:50                   ` Aaron Tomlin
2025-12-25 22:33             ` Aaron Tomlin
2025-12-19  0:26     ` Aaron Tomlin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aUXaPsCeikFVy6ra@agluck-desk3 \
    --to=tony.luck@intel.com \
    --cc=Dave.Martin@arm.com \
    --cc=atomlin@atomlin.com \
    --cc=babu.moger@amd.com \
    --cc=bmoger@amd.com \
    --cc=bp@alien8.de \
    --cc=dave.hansen@linux.intel.com \
    --cc=james.morse@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=reinette.chatre@intel.com \
    --cc=sean@ashe.io \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox