On Wed, Mar 14, 2018 at 04:50:34PM +0000, Marc Zyngier wrote: > Unmapping the idmap range using 52bit PA is quite broken, as we > don't take into account the right number of PGD entries, and rely > on PTRS_PER_PGD. The result is that pgd_index() truncates the > address, and we end-up in the weed. > > Let's introduce a new unmap_hyp_idmap_range() that knows about this, > together with a kvm_pgd_index() helper, which hides a bit of the > complexity of the issue. > > Fixes: 98732d1b189b ("KVM: arm/arm64: fix HYP ID map extension to 52 bits") > Reported-by: James Morse <james.morse@xxxxxxx> > Signed-off-by: Marc Zyngier <marc.zyngier@xxxxxxx> It looks fine to me: Reviewed-by: Catalin Marinas <catalin.marinas@xxxxxxx>