KVM: arm/arm64: Fix idmap size and alignment
authorMarc Zyngier <marc.zyngier@arm.com>
Mon, 12 Mar 2018 14:25:10 +0000 (14:25 +0000)
committerMarc Zyngier <marc.zyngier@arm.com>
Mon, 19 Mar 2018 13:04:17 +0000 (13:04 +0000)
commit46fef158f10d255dfe47cf3a0ab5f0965b66b1da
treef4a777adab64a7572f270695ca7d0f9de7948a30
parent1bb32a44aea1fe73c6f84e466a45ae559ef74559
KVM: arm/arm64: Fix idmap size and alignment

Although the idmap section of KVM can only be at most 4kB and
must be aligned on a 4kB boundary, the rest of the code expects
it to be page aligned. Things get messy when tearing down the
HYP page tables when PAGE_SIZE is 64K, and the idmap section isn't
64K aligned.

Let's fix this by computing aligned boundaries that the HYP code
will use.

Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Reported-by: James Morse <james.morse@arm.com>
Reviewed-by: James Morse <james.morse@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
virt/kvm/arm/mmu.c