mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Ben Horgan <ben.horgan@arm.com>
To: linux-kernel@vger.kernel.org
Cc: tony.luck@intel.com, reinette.chatre@intel.com,
	Dave.Martin@arm.com, james.morse@arm.com, babu.moger@amd.com,
	tglx@kernel.org, mingo@redhat.com, bp@alien8.de,
	dave.hansen@linux.intel.com, x86@kernel.org, hpa@zytor.com,
	ben.horgan@arm.com, fenghuay@nvidia.com,
	tan.shaopeng@fujitsu.com
Subject: [PATCH v6 4/7] fs/resctrl: Add monitor property 'mbm_cntr_assign_fixed'
Date: Tue,  5 May 2026 16:57:38 +0100	[thread overview]
Message-ID: <20260505155741.3591201-5-ben.horgan@arm.com> (raw)
In-Reply-To: <20260505155741.3591201-1-ben.horgan@arm.com>

Commit

  3b497c3f4f04 ("fs/resctrl: Introduce the interface to display monitoring modes")

introduced CONFIG_RESCTRL_ASSIGN_FIXED but left adding the Kconfig
entry until it was necessary. The counter assignment mode is fixed in
MPAM, even when there are assignable counters, and so addressing this
is needed to support MPAM.

To avoid the burden of another Kconfig entry, replace
CONFIG_RESCTRL_ASSIGN_FIXED with a new property in 'struct resctrl_mon',
'mbm_cntr_assign_fixed' to be set by the architecture.

Do not request the architecture to change the counter assignment mode if it
does not support doing so. Provide insight to user space about why such a
request fails.

Signed-off-by: Ben Horgan <ben.horgan@arm.com>
Reviewed-by: Reinette Chatre <reinette.chatre@intel.com>
---
Changes since v2:
Change to a resctrl_mon property rather than a arch hook
Update the commit message to mention the property

Changes since v4:
fix -> fixed in comment
commit message drop x86
In commit message add "to be set by the architecture" and update
last paragraph.

Changes since v5:
Add Reinette's R-b
---
 fs/resctrl/monitor.c    | 8 +++++++-
 include/linux/resctrl.h | 2 ++
 2 files changed, 9 insertions(+), 1 deletion(-)

diff --git a/fs/resctrl/monitor.c b/fs/resctrl/monitor.c
index 916f7a9d5658..5fbcc64e50ce 100644
--- a/fs/resctrl/monitor.c
+++ b/fs/resctrl/monitor.c
@@ -1456,7 +1456,7 @@ int resctrl_mbm_assign_mode_show(struct kernfs_open_file *of,
 		else
 			seq_puts(s, "[default]\n");
 
-		if (!IS_ENABLED(CONFIG_RESCTRL_ASSIGN_FIXED)) {
+		if (!r->mon.mbm_cntr_assign_fixed) {
 			if (enabled)
 				seq_puts(s, "default\n");
 			else
@@ -1507,6 +1507,12 @@ ssize_t resctrl_mbm_assign_mode_write(struct kernfs_open_file *of, char *buf,
 	}
 
 	if (enable != resctrl_arch_mbm_cntr_assign_enabled(r)) {
+		if (r->mon.mbm_cntr_assign_fixed) {
+			ret = -EINVAL;
+			rdt_last_cmd_puts("Counter assignment mode is not configurable\n");
+			goto out_unlock;
+		}
+
 		ret = resctrl_arch_mbm_cntr_assign_set(r, enable);
 		if (ret)
 			goto out_unlock;
diff --git a/include/linux/resctrl.h b/include/linux/resctrl.h
index 06e8c72e8660..73ff522448a0 100644
--- a/include/linux/resctrl.h
+++ b/include/linux/resctrl.h
@@ -294,6 +294,7 @@ enum resctrl_schema_fmt {
  * @mbm_assign_on_mkdir:	True if counters should automatically be assigned to MBM
  *				events of monitor groups created via mkdir.
  * @mbm_cntr_configurable:	True if assignable counters are configurable.
+ * @mbm_cntr_assign_fixed:	True if the counter assignment mode is fixed.
  */
 struct resctrl_mon {
 	u32			num_rmid;
@@ -302,6 +303,7 @@ struct resctrl_mon {
 	bool			mbm_cntr_assignable;
 	bool			mbm_assign_on_mkdir;
 	bool			mbm_cntr_configurable;
+	bool			mbm_cntr_assign_fixed;
 };
 
 /**
-- 
2.43.0


  parent reply	other threads:[~2026-05-05 15:58 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-05-05 15:57 [PATCH v6 0/7] x86,fs/resctrl: Pave the way for MPAM counter assignment Ben Horgan
2026-05-05 15:57 ` [PATCH v6 1/7] fs/resctrl: Tidy up the error path in resctrl_mkdir_event_configs() Ben Horgan
2026-05-05 22:43   ` Reinette Chatre
2026-05-06  8:14     ` Ben Horgan
2026-05-05 15:57 ` [PATCH v6 2/7] x86,fs/resctrl: Create 'event_filter' files read only if they're not configurable Ben Horgan
2026-05-05 15:57 ` [PATCH v6 3/7] fs/resctrl: Disallow the software controller when MBM counters are assignable Ben Horgan
2026-05-05 15:57 ` Ben Horgan [this message]
2026-05-05 15:57 ` [PATCH v6 5/7] fs/resctrl: Continue counter allocation after failure Ben Horgan
2026-05-05 15:57 ` [PATCH v6 6/7] fs/resctrl: Document that automatic counter assignment is best effort Ben Horgan
2026-05-05 15:57 ` [PATCH v6 7/7] fs/resctrl: Document tasks file behaviour for task id 0 and idle tasks 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=20260505155741.3591201-5-ben.horgan@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=hpa@zytor.com \
    --cc=james.morse@arm.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=reinette.chatre@intel.com \
    --cc=tan.shaopeng@fujitsu.com \
    --cc=tglx@kernel.org \
    --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

all inboxes | Powered by JetHome®