From: Ben Horgan <ben.horgan@arm.com>
To: Drew Fustini <fustini@kernel.org>
Cc: reinette.chatre@intel.com, Dave.Martin@arm.com,
babu.moger@amd.com, bp@alien8.de, dave.hansen@linux.intel.com,
fenghuay@nvidia.com, james.morse@arm.com,
linux-kernel@vger.kernel.org, peternewman@google.com,
tglx@linutronix.de, tony.luck@intel.com, x86@kernel.org,
yu.c.chen@intel.com
Subject: Re: [RFC PATCH 1/3] fs/resctrl: Add schema_name to struct resctrl_ctrl
Date: Wed, 23 Sep 2026 10:05:39 +0100 [thread overview]
Message-ID: <207b08d7-c542-4d8f-b9c2-894f0335118b@arm.com> (raw)
In-Reply-To: <arLh15FAVib_554X@gen8>
Hi Drew,
On 22/09/2026 21:15, Drew Fustini wrote:
> On Mon, Sep 21, 2026 at 02:57:00PM +0100, Ben Horgan wrote:
>> In order to properly align the schema in the schemata and size file the
>> maximum of length of all the schema names needs to be
>> known. resctrl_resource_ctrl_max_len() makes this calculation but stops
>> short of actually constructing and storing the schema names. As the schema
>> name is based on the resource name and the schema name with some special
>> cases for legacy controls this leads to a lot of conditional formatting
>> when displaying the schema name.
>>
>> Construct the schema name and save it to struct resctrl when mounting
>> resctrl. This makes displaying the schema name easy whilst control of the
>> naming stays within resctrl.
>>
>> Signed-off-by: Ben Horgan <ben.horgan@arm.com>
>> ---
>> fs/resctrl/ctrlmondata.c | 51 ++++++-----------------------
>> fs/resctrl/rdtgroup.c | 69 +++++++++++++++++++++++++---------------
>> include/linux/resctrl.h | 1 +
>> 3 files changed, 55 insertions(+), 66 deletions(-)
>>
>> diff --git a/fs/resctrl/ctrlmondata.c b/fs/resctrl/ctrlmondata.c
> [..]
>> @@ -638,18 +608,17 @@ int rdtgroup_schemata_show(struct kernfs_open_file *of,
>> if (rdtgrp->mode == RDT_MODE_PSEUDO_LOCKSETUP) {
>> list_for_each_entry(f, &rdt_resource_final_all, list) {
>> for_each_enabled_ctrl(ctrl, f->res)
>> - seq_printf(s, "%s%s%s:uninitialized\n", f->name,
>> - resctrl_ctrl_is_default(ctrl) ? "" : "_",
>> - resctrl_ctrl_is_default(ctrl) ?
>> - "" : resctrl_ctrl_name_str(ctrl->name));
>> + seq_printf(s, "%*s:uninitialized\n",
>> + max_name_width, ctrl->schema_name);
>> }
>> } else if (rdtgrp->mode == RDT_MODE_PSEUDO_LOCKED) {
>> if (!rdtgrp->plr->d) {
>> rdt_last_cmd_puts("Cache domain offline\n");
>> ret = -ENODEV;
>> } else {
>> - seq_printf(s, "%s:%d=%x\n",
>> - rdtgrp->plr->f->res->name,
>> + ctrl = resctrl_resource_ctrl_get_default(f->res);
>
> I think f is only set in the for loops, so should this be
> rdtgrp->plr->f->res instead of f->res?
Yes, it should be. I only ran this on MPAM so didn't encounter this.
Thanks,
Ben
>
> Thanks,
> Drew
next prev parent reply other threads:[~2026-09-23 9:05 UTC|newest]
Thread overview: 54+ 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-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
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 [this message]
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=207b08d7-c542-4d8f-b9c2-894f0335118b@arm.com \
--to=ben.horgan@arm.com \
--cc=Dave.Martin@arm.com \
--cc=babu.moger@amd.com \
--cc=bp@alien8.de \
--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=reinette.chatre@intel.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®