mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Reinette Chatre <reinette.chatre@intel.com>
To: "Chen, Yu C" <yu.c.chen@intel.com>
Cc: Tony Luck <tony.luck@intel.com>, Borislav Petkov <bp@alien8.de>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	Peter Newman <peternewman@google.com>,
	"x86@kernel.org" <x86@kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Dave Martin <Dave.Martin@arm.com>,
	Ben Horgan <ben.horgan@arm.com>,
	James Morse <james.morse@arm.com>,
	Babu Moger <babu.moger@amd.com>,
	Drew Fustini <fustini@kernel.org>,
	Fenghua Yu <fenghuay@nvidia.com>,
	"chen.yu@linux.dev" <chen.yu@linux.dev>
Subject: Re: [RFC v2] arm,x86,fs/resctrl: Generic schema description Proof of Concept
Date: Mon, 21 Sep 2026 08:01:59 -0700	[thread overview]
Message-ID: <0a38668f-ce14-46c0-993d-6c2286636cb0@intel.com> (raw)
In-Reply-To: <1511a82d-4c1a-42ad-9b2e-7def751d2824@intel.com>

Hi Chenyu,

On 9/20/26 10:13 PM, Chen, Yu C wrote:
> On 9/19/2026 7:11 AM, Reinette Chatre wrote:
>> Hi Chenyu,
>>
>>> On Mon, Aug 10, 2026 at 11:09:31AM -0700, Reinette Chatre wrote:
>>>>
>>>>  From user space view "legacy" is the existing percentage based MB control
>>>> that user space has been using until now. The only way to support this "legacy"
>>>> user interface with region-aware hardware is to use the MSR interface, no?
>>>> User space does not care whether the hardware uses MSR or MMIO, it just uses
>>>> the MB interface.
>>>> That is, as you also say, until it is possible to map legacy control value to
>>>> region-aware control value at which point the MMIO interface can be used and
>>>> user space can continue to use the MB control without interruption.
>>>>
>>>
>>> While looking at the context of control_mode under the info directory, it is
>>> currently used only for the controller to switch between "legacy" and "native".
>>> However, there is also an explicit requirement for the MBM to switch between
>>> "legacy" and "native" TOGETHER with the MBA.
>>>
>>> According to the RDT spec 6.1.3.1 RDT Control Register for CPU Agents,
>>> it discourages mixing legacy MSR for MBM with region aware MBA:
>>> "It is recommended that software use Region Aware MBM when Region Aware
>>> MBA is enabled and vice versa. Mixed mode use (e.g, legacy MSR
>>> interfaces for MBM with Region Aware MBA or vice versa) is not
>>> supported and may lead to inconsistent behavior"
>>>
>>> That is to say, I'm trying to add logic in the code so that, if control_mode
>>> has switched, the corresponding "mode" for MBM will also be adjusted to the
>>> same mode. The code can enable/create both legacy MBM events/sysfs and region-aware
>>> MBM events/sysfs during bootup, and make one of them visible according to control_mode,
>>> similar to what Babu does in PLZA when hiding a file in
>>> https://lore.kernel.org/lkml/f7bcf19ac8113a1e3d9575739c1a6400c455ce6d.1787772750.git.babu.moger@amd.com/
>>>
>>> May I know whether this approach is doable?
>> This sounds reasonable to me. Since so many changes are between current resctrl and those
>> changes it is difficult to envision how clean such change would be. We should aim to
>> avoid sprinkling "if ("region aware") then" checks all over the place.
>>
>> A switch like this will force "region aware" to support the same number of CLOS/RMID
>> as the MSR interface. Is this a concern?
>>
> 
> It seems that taking the weakest link (minimum) across all sources is a pervasive
> convention in resctrl, which can be used to avoid out-of-bounds CLOS/RMID access.

Right. My question is what is expected if a resource supports different number of
CLOSID/RMID depending on the interface used to manage the resource? More specifically,
resctrl can now interact with the MB resource using two interfaces: MSR and ACPI. Each
interface separately enumerates how many CLOSID/RMID it supports. Thus, it seems possible,
that the MB resource may support X CLOSID over MSR interface and Y CLOSID over ACPI
interface.

resctrl exposes the per-resource CLOSID/RMID to user space and today thus needs to
pick whether it exposes the CLOSID/RMID from MSR interface or from ACPI interface and
that will guide how many resctrl will support during the mount. As you state resctrl
uses the minimum. 

If the user has no intention of using the interface that enforces the minimum then there
is no way today for the user to indicate this and thus obtain benefit of all supported
IDs.

Can it be assumed that a system that supports both MSR and ACPI interfaces will enumerate
the same number of CLOSID and RMID on both interfaces?

> If a future platform does not support the CPUID/MSR interfaces, we can only rely on
> the ACPI table to get the max RMID/CLOSID.
ack.

Reinette


  reply	other threads:[~2026-09-21 15:19 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-08-04  5:26 Reinette Chatre
2026-08-05 16:59 ` Ben Horgan
2026-08-05 23:57   ` Reinette Chatre
2026-08-06 17:04     ` Luck, Tony
2026-08-06 17:11       ` Reinette Chatre
2026-08-07 14:14         ` Moger, Babu
2026-08-07 15:35           ` Reinette Chatre
2026-08-07 18:33             ` Moger, Babu
2026-08-07 22:53               ` Reinette Chatre
2026-08-10 18:52                 ` Babu Moger
2026-08-11  4:06                   ` Reinette Chatre
2026-08-11 14:59                     ` Babu Moger
2026-08-11 15:30                       ` Reinette Chatre
2026-08-11 16:09                         ` Babu Moger
2026-08-24 14:40                 ` Ben Horgan
2026-08-24 18:07                   ` Reinette Chatre
2026-08-25 15:20                     ` Ben Horgan
2026-08-07 15:35           ` Chen, Yu C
2026-08-07 17:57             ` Moger, Babu
2026-08-10  2:05 ` Chen, Yu C
2026-08-10 15:53   ` Reinette Chatre
2026-08-10 17:23     ` Chen, Yu C
2026-08-10 18:09       ` Reinette Chatre
2026-08-11  3:49         ` Chen, Yu C
2026-08-13 13:59           ` Chen Yu
2026-08-13 15:19             ` Reinette Chatre
2026-08-18 16:02               ` Chen Yu
2026-08-18 17:10                 ` Reinette Chatre
2026-09-14  2:49         ` Chen Yu
2026-09-18 23:11           ` Reinette Chatre
2026-09-21  5:13             ` Chen, Yu C
2026-09-21 15:01               ` Reinette Chatre [this message]
2026-09-22  3:19                 ` Chen, Yu C
2026-09-21 16:21               ` Luck, Tony
2026-08-10  2:55 ` Fenghua Yu
2026-08-10  3:02   ` Chen, Yu C
2026-08-10  3:25     ` Fenghua Yu
2026-08-10  5:24       ` Chen, Yu C
2026-08-10 15:53   ` Reinette Chatre
2026-08-17 15:09     ` Reinette Chatre
2026-09-11 10:09     ` Ben Horgan
2026-09-18 22:47       ` Reinette Chatre
2026-09-21 10:22         ` Ben Horgan
2026-09-21 16:06           ` Reinette Chatre
2026-09-21 16:53             ` Ben Horgan
2026-09-23 15:28               ` Reinette Chatre
2026-09-21 13:56 ` [RFC PATCH 0/3] Suggestions for cache scalar controls Ben Horgan
2026-09-21 13:57   ` [RFC PATCH 1/3] fs/resctrl: Add schema_name to struct resctrl_ctrl Ben Horgan
2026-09-22 20:15     ` Drew Fustini
2026-09-23  9:05       ` Ben Horgan
2026-09-21 13:57   ` [RFC PATCH 2/3] fs/resctrl: Use correct schema name in bw_validate() last_cmd_status messages Ben Horgan
2026-09-21 13:57   ` [RFC PATCH 3/3] fs/resctrl: display size for scalar cache controls Ben Horgan
2026-09-21 14:08   ` [RFC PATCH 0/3] Suggestions for cache scalar controls Ben Horgan
2026-09-22 20:26   ` Drew Fustini

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=0a38668f-ce14-46c0-993d-6c2286636cb0@intel.com \
    --to=reinette.chatre@intel.com \
    --cc=Dave.Martin@arm.com \
    --cc=babu.moger@amd.com \
    --cc=ben.horgan@arm.com \
    --cc=bp@alien8.de \
    --cc=chen.yu@linux.dev \
    --cc=dave.hansen@linux.intel.com \
    --cc=fenghuay@nvidia.com \
    --cc=fustini@kernel.org \
    --cc=james.morse@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=peternewman@google.com \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.com \
    --cc=x86@kernel.org \
    --cc=yu.c.chen@intel.com \
    /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

all inboxes | Powered by JetHome®