KVM: arm64: Fix nVHE boot on VHE systems
authorMarc Zyngier <maz@kernel.org>
Tue, 8 Dec 2020 19:51:49 +0000 (19:51 +0000)
committerMarc Zyngier <maz@kernel.org>
Tue, 8 Dec 2020 19:51:49 +0000 (19:51 +0000)
Conflict resolution gone astray results in the kernel not booting
on VHE-capable HW when VHE support is disabled. Thankfully spotted
by David.

Reported-by: David Brazdil <dbrazdil@google.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
arch/arm64/kernel/head.S

index 7eba3a1..9576830 100644 (file)
@@ -515,8 +515,11 @@ SYM_INNER_LABEL(init_el2, SYM_L_LOCAL)
         */
        mrs     x2, id_aa64mmfr1_el1
        ubfx    x2, x2, #ID_AA64MMFR1_VHE_SHIFT, #4
-       cbz     x2, init_el2_nvhe
+#else
+       mov     x2, xzr
 #endif
+       cbz     x2, init_el2_nvhe
+
        /*
         * When VHE _is_ in use, EL1 will not be used in the host and
         * requires no configuration, and all non-hyp-specific EL2 setup