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, 10 Aug 2026 08:53:57 -0700 [thread overview]
Message-ID: <07a79f5f-ad39-447d-b43d-01e44c7870a2@intel.com> (raw)
In-Reply-To: <9e38f138-7872-445d-9a11-105f9d0fa4d0@intel.com>
Hi Chenyu,
On 8/9/26 7:05 PM, Chen, Yu C wrote:
> On 8/4/2026 1:26 PM, Reinette Chatre wrote:
> I have tested this version, and it exhibits the expected
> behavior according to my understanding:
>
> The following is the legacy schemata:
> [root@ resctrl]# cat schemata
> MB:0=100;1=100;2=100;3=100
>
> and the following is the native schemata:
> [root@ resctrl]# echo native > /sys/fs/resctrl/info/MB/control_mode
> [root@ resctrl]# cat schemata
> MB_REGION0_MAX:0=200;1=200;2=200;3=200
> MB_REGION0_MIN:0=1;1=1;2=1;3=1
>
> I have a minor question I'd like to confirm:
>
> item 1.
> In legacy mode, we intend to always let the "native" controller
> emulate the "legacy" controller - at least for the region‑aware
> RDT case.
> Q1: Is this understanding correct?
As I understand region-aware is what actually makes this impossible to do
since there is no mapping from "legacy" percentage based control value to
"native" control value. Even more, the hardware self has two separate interfaces:
"legacy" uses MSR interface and "native" uses ACPI interface. As I see it a
region aware system in "legacy" mode is using the "legacy" MSR interface and
not use the "native" ACPI interface *at all*.
> item 2.
> In commit fbed64f80515 ("x86/resctrl: SAMPLE: Emulated controls"),
> during resctrl initialization, __get_mem_config_intel() clears
> the legacy controller's hw_ctrl->msr_update to NULL, and sets
> its emulation controllers in hw_ctrl->r_ctrl.emulated_by to
> the region-aware related controllers. So legacy controller is
> emulated by region-aware controllers.
>
> item 3.
> In resctrl_arch_control_mode_set(), when switching to "legacy"
> mode, the legacy controller is set to:
> hw_ctrl->msr_update = update_temporary_legacy_MB;
> while the emulating controller is set to NULL:
> hw_ctrl->msr_update = NULL;
> That means, the emulated controllers will not take effect.
>
> Q2:Does item 3 contradict item 1?
The switching of .msr_update() is sample code to present a PoC of how
region-aware could be supported based on my understanding described above.
I expected that, for example, when user space switches the control mode between
"legacy"/"native" then the region-aware code would disable/enable region-aware
mode via the RDT_CTRL register and adjust the .msr_update() to match what
hardware interface is active.
If at some point in future it becomes possible for resctrl to know how to
map a legacy control value to a native control value for region aware then this
switching should no longer be necessary and the "native" fine grained controller
can always be used to emulate the "legacy" percentage based controller and to
support this the ACPI interface would be enabled all the time.
I do not think any of the other architectures' features would need something
like this.
Reinette
next prev parent reply other threads:[~2026-08-10 15:54 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-08-04 5:26 [RFC v2] arm,x86,fs/resctrl: Generic schema description Proof of Concept 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-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 [this message]
2026-08-10 17:23 ` Chen, Yu C
2026-08-10 18:09 ` Reinette Chatre
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
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=07a79f5f-ad39-447d-b43d-01e44c7870a2@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