KVM: PPC: Book3S HV: Don't drop low-order page address bits
Subsystems (3)
PATCH 1/1 KVM: PPC: Book3S HV: Don't drop low-order page address bits
Commit caaa4c804fae ("KVM: PPC: Book3S HV: Fix physical address calculations") unfortunately resulted in some low-order address bits getting dropped in the case where the guest is creating a 4k HPTE and the host page size is 64k. By getting the low-order bits from hva rather than gpa we miss out on bits 12 - 15 in this case, since hva is at page granularity. This puts the missing bits back in.
---
Alex, please apply this to your for-3.13 branch.
Thanks,
Paul.
arch/powerpc/kvm/book3s_hv_rm_mmu.c | 1 + 1 file changed, 1 insertion(+)
arch/powerpc/kvm/book3s_hv_rm_mmu.c +1 -0
@@ -240,6 +240,7 @@ long kvmppc_do_h_enter(struct kvm *kvm, unsigned long flags, is_io =hpte_cache_bits (pte_val (pte)); pa =pte_pfn (pte) <<PAGE_SHIFT ; pa |= hva & (pte_size -1 ); + pa |= gpa & ~PAGE_MASK ; } }
Signature · 1 line
1.8.4.2
Alexander Graf
AppliedQuoted 9 lines · Paul Mackerras
Commit
caaa4c804fae("KVM: PPC: Book3S HV: Fix physical address calculations") unfortunately resulted in some low-order address bits getting dropped in the case where the guest is creating a 4k HPTE and the host page size is 64k. By getting the low-order bits from hva rather than gpa we miss out on bits 12 - 15 in this case, since hva is at page granularity. This puts the missing bits back in.Reported-by Alexey Kardashevskiy <[email protected]>Signed-off-by Paul Mackerras <[email protected]>
Thanks, applied to for-3.13.
Alex