Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

KVM: PPC: booke: Extend MAS2 EPN mask for 64-bit

Extend MAS2 EPN mask to retain most significant bits on 64-bit hosts.
Use this mask in tlb effective address accessor.

Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com>
Signed-off-by: Alexander Graf <agraf@suse.de>

authored by

Mihai Caraman and committed by
Alexander Graf
e9666ea1 9e2fa646

+2 -2
+1 -1
arch/powerpc/include/asm/mmu-book3e.h
··· 59 59 #define MAS1_TSIZE_SHIFT 7 60 60 #define MAS1_TSIZE(x) (((x) << MAS1_TSIZE_SHIFT) & MAS1_TSIZE_MASK) 61 61 62 - #define MAS2_EPN 0xFFFFF000 62 + #define MAS2_EPN (~0xFFFUL) 63 63 #define MAS2_X0 0x00000040 64 64 #define MAS2_X1 0x00000020 65 65 #define MAS2_W 0x00000010
+1 -1
arch/powerpc/kvm/e500.h
··· 154 154 155 155 static inline gva_t get_tlb_eaddr(const struct kvm_book3e_206_tlb_entry *tlbe) 156 156 { 157 - return tlbe->mas2 & 0xfffff000; 157 + return tlbe->mas2 & MAS2_EPN; 158 158 } 159 159 160 160 static inline u64 get_tlb_bytes(const struct kvm_book3e_206_tlb_entry *tlbe)