Re: [PATCH 17/18] arm64: Permit onlining of HVO-incompatible late CPUs if HVO is not in use
From: Catalin Marinas
Date: Wed Aug 19 2026 - 06:11:30 EST
On Wed, Jul 08, 2026 at 03:11:27AM +0000, James Houghton wrote:
> First, HVO must have ARM64_CPUCAP_OPTIONAL_FOR_LATE_CPU so that
> incompatible CPUs can be onlined if HVO is not in use. The
> late_cpu_enable() callback is used to check if HVO is truly in use.
>
> If the late CPU is incompatible with HVO and HVO is *not* in use, HVO
> becomes permanently disabled.
>
> If the late CPU is incompatible with HVO and HVO *is* in use, the CPU
> is not onlined.
I haven't looked in detail at the logic here but do we actually care
about this? We still need to solve the BBML2 requirement around patches
12 and 13. BBML2 won't be an optionally late feature for other reasons,
so such CPUs won't be allowed. This leaves us with HW AF. In mainline,
the check is done on the sanitised regs but IIRC these can still be
overridden on late CPU onlining with a warning. We only use this check
as an optimisation, so not an issue in mainline but can be come
problematic with HVO.
If we don't have a strong use-case for mismatched HAFDBS support, I'd
drop these last patches for now.
--
Catalin