summaryrefslogtreecommitdiffstats
path: root/arch/arm64/kvm/arm.c
diff options
context:
space:
mode:
authorMarc Zyngier <maz@kernel.org>2020-09-11 15:54:30 +0100
committerMarc Zyngier <maz@kernel.org>2020-09-11 15:54:30 +0100
commitae8bd85ca8a4a812721388ab85b3d67077951f52 (patch)
treeb01af045e7352464aa5ede530dc772dc52e5907e /arch/arm64/kvm/arm.c
parent7b75cd5128421c673153efb1236705696a1a9812 (diff)
parentc9b69a0cf0b4336fe7d2e35c46273debc68910fd (diff)
downloadlinux-ae8bd85ca8a4a812721388ab85b3d67077951f52.tar.gz
linux-ae8bd85ca8a4a812721388ab85b3d67077951f52.tar.bz2
linux-ae8bd85ca8a4a812721388ab85b3d67077951f52.zip
Merge branch 'kvm-arm64/pt-new' into kvmarm-master/next
Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'arch/arm64/kvm/arm.c')
-rw-r--r--arch/arm64/kvm/arm.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/arch/arm64/kvm/arm.c b/arch/arm64/kvm/arm.c
index 57876b0b870b..189b4c648cbb 100644
--- a/arch/arm64/kvm/arm.c
+++ b/arch/arm64/kvm/arm.c
@@ -286,7 +286,7 @@ void kvm_arch_vcpu_destroy(struct kvm_vcpu *vcpu)
if (vcpu->arch.has_run_once && unlikely(!irqchip_in_kernel(vcpu->kvm)))
static_branch_dec(&userspace_irqchip_in_use);
- kvm_mmu_free_memory_caches(vcpu);
+ kvm_mmu_free_memory_cache(&vcpu->arch.mmu_page_cache);
kvm_timer_vcpu_terminate(vcpu);
kvm_pmu_vcpu_destroy(vcpu);
@@ -1643,6 +1643,10 @@ int kvm_arch_init(void *opaque)
return -ENODEV;
}
+ if (cpus_have_final_cap(ARM64_WORKAROUND_DEVICE_LOAD_ACQUIRE))
+ kvm_info("Guests without required CPU erratum workarounds can deadlock system!\n" \
+ "Only trusted guests should be used on this system.\n");
+
for_each_online_cpu(cpu) {
smp_call_function_single(cpu, check_kvm_target_cpu, &ret, 1);
if (ret < 0) {