]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/blobdiff - virt/kvm/arm/mmu.c
kvm: arm/arm64: Fix stage2_flush_memslot for 4 level page table
[mirror_ubuntu-bionic-kernel.git] / virt / kvm / arm / mmu.c
index 1f4cac53b92349d62dba6853e605e24e35729337..9f69202d8e49b4fcc22ee3445d1598e1f93b2e08 100644 (file)
@@ -375,7 +375,8 @@ static void stage2_flush_memslot(struct kvm *kvm,
        pgd = kvm->arch.pgd + stage2_pgd_index(addr);
        do {
                next = stage2_pgd_addr_end(addr, end);
-               stage2_flush_puds(kvm, pgd, addr, next);
+               if (!stage2_pgd_none(*pgd))
+                       stage2_flush_puds(kvm, pgd, addr, next);
        } while (pgd++, addr = next, addr != end);
 }