[PATCH 2/2] KVM: arm64: Use hVHE in pKVM by default on CPUs with VHE support

Oliver Upton oliver.upton at linux.dev
Wed May 1 10:47:40 PDT 2024


On Wed, May 01, 2024 at 05:34:00PM +0100, Will Deacon wrote:
> The early command line parsing treats "kvm-arm.mode=protected" as an
> alias for "id_aa64mmfr1.vh=0", forcing the use of nVHE so that the host
> kernel runs at EL1 with the pKVM hypervisor at EL2.
> 
> With the introduction of hVHE support in ad744e8cb346 ("arm64: Allow
> arm64_sw.hvhe on command line"), the hypervisor can run using the EL2+0
> translation regime. This is interesting for unusual CPUs that have VH
> stuck to 1, but also because it opens the possibility of a hypervisor
> "userspace" in the distant future which could be used to isolate vCPU
> contexts in the hypervisor (see Marc's talk from KVM Forum 2022 [1]).
> 
> Repaint the "kvm-arm.mode=protected" alias to map to "arm64_sw.hvhe=1",
> which will use hVHE on CPUs that support it and remain with nVHE
> otherwise.
> 
> [1] https://www.youtube.com/watch?v=1F_Mf2j9eIo
> Signed-off-by: Will Deacon <will at kernel.org>

Acked-by: Oliver Upton <oliver.upton at linux.dev>

-- 
Thanks,
Oliver



More information about the linux-arm-kernel mailing list