[PATCH 4/5] selftests/resctrl: Gate the MBA test on features, not CPU vendor

From: Richard Cheng

Date: Tue Jul 21 2026 - 22:14:11 EST


The MBA test is skipped on every CPU that does not report
"GenuineIntel", although everything the test needs is discoverable at
runtime: an MB resource with a bandwidth monitor in resctrl, and a
reference PMU backend to validate against. The vendor gate also can
never match on architectures whose /proc/cpuinfo has no vendor_id
line at all, such as arm64.

Drop .vendor_specific from the MBA test and rely on the feature
check. On systems where any required piece is missing - including
architectures for which no reference bandwidth backend exists yet -
the test reports SKIP exactly as it did under the vendor gate.

Signed-off-by: Richard Cheng <icheng@xxxxxxxxxx>
---
tools/testing/selftests/resctrl/mba_test.c | 7 ++++++-
1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/resctrl/mba_test.c b/tools/testing/selftests/resctrl/mba_test.c
index 6c85107c32ee..22a887a1b4f8 100644
--- a/tools/testing/selftests/resctrl/mba_test.c
+++ b/tools/testing/selftests/resctrl/mba_test.c
@@ -208,6 +208,12 @@ static int mba_run_test(const struct resctrl_test *test, const struct user_param
return ret;
}

+/*
+ * The MBA test runs wherever resctrl exposes an MB resource, a memory-bandwidth
+ * monitor (x86 local bytes under L3_MON or MPAM total bytes under MB_MON), and
+ * an independent reference-bandwidth PMU exists to
+ * validate against. It is not gated on CPU vendor.
+ */
static bool mba_feature_check(const struct resctrl_test *test)
{
return test_resource_feature_check(test) &&
@@ -219,7 +225,6 @@ static bool mba_feature_check(const struct resctrl_test *test)
struct resctrl_test mba_test = {
.name = "MBA",
.resource = "MB",
- .vendor_specific = ARCH_INTEL,
.feature_check = mba_feature_check,
.run_test = mba_run_test,
.cleanup = mba_test_cleanup,
--
2.43.0