From: Reinette Chatre <reinette.chatre@intel.com>
To: "Luck, Tony" <tony.luck@intel.com>
Cc: <james.morse@arm.com>, <Dave.Martin@arm.com>,
<babu.moger@amd.com>, <bp@alien8.de>, <tglx@linutronix.de>,
<dave.hansen@linux.intel.com>, <x86@kernel.org>, <hpa@zytor.com>,
<ben.horgan@arm.com>, <fustini@kernel.org>, <fenghuay@nvidia.com>,
<peternewman@google.com>, <linux-kernel@vger.kernel.org>,
<patches@lists.linux.dev>
Subject: Re: [PATCH 05/11] fs/resctrl: Use accurate type for rdt_resource::rid
Date: Tue, 3 Mar 2026 11:06:52 -0800 [thread overview]
Message-ID: <a3343e9b-e481-4282-a775-651a516164a1@intel.com> (raw)
In-Reply-To: <aacmf_CM52gHRMot@agluck-desk3>
Hi Tony,
On 3/3/26 10:20 AM, Luck, Tony wrote:
> On Mon, Mar 02, 2026 at 10:46:11AM -0800, Reinette Chatre wrote:
>
>> - /* Must be the last */
>> - RDT_NUM_RESOURCES,
>> + /* Additions to enum need to update RDT_NUM_RESOURCES. */
>> };
>>
>> +#define RDT_NUM_RESOURCES (RDT_RESOURCE_PERF_PKG + 1)
>
> Alternative approach that doesn't rely on developers reading
> that comment and updating the define.
>
> Replace the RDT_NUM_RESOURCES #define with a variable initialized
> to ARRAY_SIZE(rdt_resources_all).
....
> include/linux/resctrl.h | 11 +++++------
> arch/x86/kernel/cpu/resctrl/core.c | 9 ++++++---
> 2 files changed, 11 insertions(+), 9 deletions(-)
>
> diff --git a/include/linux/resctrl.h b/include/linux/resctrl.h
> index 006e57fd7ca5..ef2efa2e4b39 100644
> --- a/include/linux/resctrl.h
> +++ b/include/linux/resctrl.h
The resources resctrl fs supports are defined within this global
resctrl fs header file as:
enum resctrl_res_level {
RDT_RESOURCE_L3,
RDT_RESOURCE_L2,
RDT_RESOURCE_MBA,
RDT_RESOURCE_SMBA,
RDT_RESOURCE_PERF_PKG,
RDT_NUM_RESOURCES,
};
> @@ -27,13 +27,15 @@ int proc_resctrl_show(struct seq_file *m,
>
> #endif
>
> +extern int rdt_num_resources;
> +
....
Architecture code below ...
> --- a/arch/x86/kernel/cpu/resctrl/core.c
> +++ b/arch/x86/kernel/cpu/resctrl/core.c
...
> @@ -57,7 +58,7 @@ static void mba_wrmsr_amd(struct msr_param *m);
> #define ctrl_domain_init(id) LIST_HEAD_INIT(rdt_resources_all[id].r_resctrl.ctrl_domains)
> #define mon_domain_init(id) LIST_HEAD_INIT(rdt_resources_all[id].r_resctrl.mon_domains)
>
> -struct rdt_hw_resource rdt_resources_all[RDT_NUM_RESOURCES] = {
> +struct rdt_hw_resource rdt_resources_all[] = {
> [RDT_RESOURCE_L3] =
> {
> .r_resctrl = {
> @@ -110,6 +111,8 @@ struct rdt_hw_resource rdt_resources_all[RDT_NUM_RESOURCES] = {
> },
> };
>
> +int rdt_num_resources = ARRAY_SIZE(rdt_resources_all);
> +
... and this proposes to let the *architecture* initialize how many
resources resctrl fs supports?
This implies that all architectures need to initialize this on behalf of
resctrl fs. resctrl fs does not force an architecture to use an array nor does
it require an architecture to support all resources. What if an architecture
decides to not use an array and does not support all the resources resctrl fs
supports? How should it initialize rdt_num_resources?
I see the number of resources supported by resctrl fs as a resctrl fs property,
not something it should depend on the architecture to initialize.
Reinette
next prev parent reply other threads:[~2026-03-03 19:07 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-02 18:46 [PATCH 00/11] x86,fs/resctrl: Improve resctrl quality and consistency Reinette Chatre
2026-03-02 18:46 ` [PATCH 01/11] fs/resctrl: Add missing return value descriptions Reinette Chatre
2026-03-02 18:46 ` [PATCH 02/11] fs/resctrl: Avoid "may be used uninitialized" warning Reinette Chatre
2026-03-02 18:46 ` [PATCH 03/11] fs/resctrl: Use correct format specifier for printing error pointers Reinette Chatre
2026-03-02 18:46 ` [PATCH 04/11] x86/resctrl: Protect against bad shift Reinette Chatre
2026-03-02 18:46 ` [PATCH 05/11] fs/resctrl: Use accurate type for rdt_resource::rid Reinette Chatre
2026-03-03 18:20 ` Luck, Tony
2026-03-03 19:06 ` Reinette Chatre [this message]
2026-03-03 19:54 ` Luck, Tony
2026-03-03 22:29 ` Reinette Chatre
2026-03-03 23:26 ` Luck, Tony
2026-03-17 11:23 ` Ben Horgan
2026-03-17 17:34 ` Reinette Chatre
2026-03-02 18:46 ` [PATCH 06/11] fs/resctrl: Pass error reading event through to user space Reinette Chatre
2026-03-17 17:08 ` Ben Horgan
2026-03-02 18:46 ` [PATCH 07/11] fs/resctrl: Add last_cmd_status support for writes to max_threshold_occupancy Reinette Chatre
2026-03-17 17:13 ` Ben Horgan
2026-03-02 18:46 ` [PATCH 08/11] fs/resctrl: Use accurate and symmetric exit flows Reinette Chatre
2026-03-02 18:46 ` [PATCH 09/11] fs/resctrl: Use stricter checks on input to cpus/cpus_list file Reinette Chatre
2026-03-02 18:46 ` [PATCH 10/11] fs/resctrl: Change last_cmd_status custom during input parsing Reinette Chatre
2026-03-17 17:20 ` Ben Horgan
2026-03-02 18:46 ` [PATCH 11/11] fs/resctrl: Communicate resource group deleted error via last_cmd_status Reinette Chatre
2026-03-02 23:37 ` [PATCH 00/11] x86,fs/resctrl: Improve resctrl quality and consistency Luck, Tony
2026-03-03 2:18 ` Reinette Chatre
2026-03-04 11:48 ` Ben Horgan
2026-03-16 22:28 ` Reinette Chatre
2026-03-16 17:44 ` Ben Horgan
2026-03-16 18:18 ` Reinette Chatre
2026-03-17 10:25 ` Ben Horgan
2026-03-17 18:09 ` Reinette Chatre
2026-03-18 11:59 ` Ben Horgan
2026-03-18 16:35 ` Reinette Chatre
2026-03-18 17:10 ` Ben Horgan
2026-03-18 20:12 ` Reinette Chatre
2026-03-19 9:53 ` Ben Horgan
2026-03-19 16:18 ` Reinette Chatre
2026-03-19 17:18 ` Ben Horgan
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=a3343e9b-e481-4282-a775-651a516164a1@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=dave.hansen@linux.intel.com \
--cc=fenghuay@nvidia.com \
--cc=fustini@kernel.org \
--cc=hpa@zytor.com \
--cc=james.morse@arm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=patches@lists.linux.dev \
--cc=peternewman@google.com \
--cc=tglx@linutronix.de \
--cc=tony.luck@intel.com \
--cc=x86@kernel.org \
/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