]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commitdiff
KVM: arm64: Use lm_alias in nVHE-only VA conversion
authorDavid Brazdil <dbrazdil@google.com>
Tue, 8 Dec 2020 14:24:48 +0000 (14:24 +0000)
committerMarc Zyngier <maz@kernel.org>
Tue, 22 Dec 2020 10:48:50 +0000 (10:48 +0000)
init_hyp_physvirt_offset() computes PA from a kernel VA. Conversion to
kernel linear-map is required first but the code used kvm_ksym_ref() for
this purpose. Under VHE that is a NOP and resulted in a runtime warning.
Replace kvm_ksym_ref with lm_alias.

Reported-by: Qian Cai <qcai@redhat.com>
Signed-off-by: David Brazdil <dbrazdil@google.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20201208142452.87237-3-dbrazdil@google.com
arch/arm64/kvm/va_layout.c

index d8cc51bd60bf22a7769de23536fca461413f7bb9..914732b88c69f55cd63af2b8b67d223dea3807a9 100644 (file)
@@ -42,7 +42,7 @@ static void init_hyp_physvirt_offset(void)
        u64 kern_va, hyp_va;
 
        /* Compute the offset from the hyp VA and PA of a random symbol. */
-       kern_va = (u64)kvm_ksym_ref(__hyp_text_start);
+       kern_va = (u64)lm_alias(__hyp_text_start);
        hyp_va = __early_kern_hyp_va(kern_va);
        CHOOSE_NVHE_SYM(hyp_physvirt_offset) = (s64)__pa(kern_va) - (s64)hyp_va;
 }