[PATCH v2 18/20 DO-NOT-MERGE] arm64: Drop BBML3 requirement for HVO

From: James Houghton

Date: Fri Oct 02 2026 - 20:23:31 EST


With PMD updates being done with the Access Flag trick, BBML3 is no
longer needed.

Dropping this requirement vastly widens the pool of systems this
optimization is valid for.

Signed-off-by: James Houghton <jthoughton@xxxxxxxxxx>
---
arch/arm64/kernel/cpufeature.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/arch/arm64/kernel/cpufeature.c b/arch/arm64/kernel/cpufeature.c
index 448d4ef085de..f3fd6d0b0e41 100644
--- a/arch/arm64/kernel/cpufeature.c
+++ b/arch/arm64/kernel/cpufeature.c
@@ -2206,11 +2206,10 @@ static bool has_bbm_through_af(const struct arm64_cpu_capabilities *caps, int sc
}

/*
- * We need BBML3 to support Block -> Table transitions without taking
- * faults, and we need HW AF support to support changing the OA without
- * taking faults.
+ * We need HW AF support to support changing the vmemmap mapping level
+ * and OA without taking faults.
*/
- return cpu_supports_bbml3() && cpu_has_hw_af();
+ return cpu_has_hw_af();
}

static void cpu_enable_pan(const struct arm64_cpu_capabilities *__unused)
--
2.56.0.rc1.315.gc6ed9934b7-goog