public inbox for linux-kernel@vger.kernel.org
 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 v5 3/7] fs/resctrl: Disallow the software controller when MBM counters are assignable
Date: Tue, 28 Apr 2026 14:04:18 +0100	[thread overview]
Message-ID: <20260428130422.2287302-4-ben.horgan@arm.com> (raw)
In-Reply-To: <20260428130422.2287302-1-ben.horgan@arm.com>

The software controller requires that there is one MBM counter per monitor
group that is assigned to the event backing the software controller, as per
mba_MBps_event. When mbm_event mode is in use, it is not guaranteed that
any particular event will have an assigned counter.

Currently, only AMD systems support counter assignment, but the MBA delay
is non-linear and so the software controller is never supported anyway. On
MPAM systems, the MBA delay is linear and so the software controller could
be supported. The MPAM driver, unless a need arises, will not support the
'default' mbm_assign_mode and will always use the 'mbm_event' mode for
memory bandwidth monitoring.

Rather than develop a way to guarantee the counter assignment requirements
needed by the software controller, take the pragmatic approach. Don't allow
the software controller to be used at the same time as 'mbm_event' mode. As
MPAM is the only relevant architecture and it will use 'mbm_event' mode
whenever there are assignable MBM counters, for simplicity's sake, don't
allow the software controller when the MBM counters are assignable.

Implement this by failing the mount if the user requests the software
controller, the mba_MBps option, and the MBM counters are assignable.

Signed-off-by: Ben Horgan <ben.horgan@arm.com>
---
Changes since v4:
Remove "for each MBA control" from commit message
Update last_cmd_status message
---
 fs/resctrl/rdtgroup.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/fs/resctrl/rdtgroup.c b/fs/resctrl/rdtgroup.c
index b382a348dd79..be84bb210e3a 100644
--- a/fs/resctrl/rdtgroup.c
+++ b/fs/resctrl/rdtgroup.c
@@ -2530,7 +2530,8 @@ static bool supports_mba_mbps(void)
 
 	return (resctrl_is_mbm_enabled() &&
 		r->alloc_capable && is_mba_linear() &&
-		r->ctrl_scope == rmbm->mon_scope);
+		r->ctrl_scope == rmbm->mon_scope &&
+		!rmbm->mon.mbm_cntr_assignable);
 }
 
 /*
@@ -2945,7 +2946,7 @@ static int rdt_parse_param(struct fs_context *fc, struct fs_parameter *param)
 		ctx->enable_cdpl2 = true;
 		return 0;
 	case Opt_mba_mbps:
-		msg = "mba_MBps requires MBM and linear scale MBA at L3 scope";
+		msg = "mba_MBps requires MBM (mbm_event mode not supported) and linear scale MBA at L3 scope";
 		if (!supports_mba_mbps())
 			return invalfc(fc, msg);
 		ctx->enable_mba_mbps = true;
-- 
2.43.0


  parent reply	other threads:[~2026-04-28 13:04 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-28 13:04 [PATCH v5 0/7] x86,fs/resctrl: Pave the way for MPAM counter assignment Ben Horgan
2026-04-28 13:04 ` [PATCH v5 1/7] fs/resctrl: Tidy up the error path in resctrl_mkdir_event_configs() Ben Horgan
2026-05-04 15:59   ` Reinette Chatre
2026-04-28 13:04 ` [PATCH v5 2/7] x86,fs/resctrl: Create 'event_filter' files read only if they're not configurable Ben Horgan
2026-05-04 15:59   ` Reinette Chatre
2026-04-28 13:04 ` Ben Horgan [this message]
2026-05-04 16:01   ` [PATCH v5 3/7] fs/resctrl: Disallow the software controller when MBM counters are assignable Reinette Chatre
2026-05-05  9:34     ` Ben Horgan
2026-05-05 10:20       ` Ben Horgan
2026-05-05 15:21         ` Reinette Chatre
2026-05-05 15:51           ` Ben Horgan
2026-04-28 13:04 ` [PATCH v5 4/7] fs/resctrl: Add monitor property 'mbm_cntr_assign_fixed' Ben Horgan
2026-05-04 16:01   ` Reinette Chatre
2026-04-28 13:04 ` [PATCH v5 5/7] fs/resctrl: Continue counter allocation after failure Ben Horgan
2026-05-04 16:01   ` Reinette Chatre
2026-04-28 13:04 ` [PATCH v5 6/7] fs/resctrl: Document that automatic counter assignment is best effort Ben Horgan
2026-05-04 16:01   ` Reinette Chatre
2026-04-28 13:04 ` [PATCH v5 7/7] fs/resctrl: Document tasks file behaviour for task id 0 and idle tasks Ben Horgan
2026-05-04 16:02   ` 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=20260428130422.2287302-4-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