diff options
author | Joel Schopp <joel.schopp@amd.com> | 2014-07-09 11:17:04 -0500 |
---|---|---|
committer | Christoffer Dall <christoffer.dall@linaro.org> | 2014-09-26 14:39:13 +0200 |
commit | dbff124e29fa24aff9705b354b5f4648cd96e0bb (patch) | |
tree | 656027fb37f0866098281c7fb48accba6b47db66 /arch/arm64/include/asm/kvm_emulate.h | |
parent | 0fea6d7628ed6e25a9ee1b67edf7c859718d39e8 (diff) | |
download | talos-obmc-linux-dbff124e29fa24aff9705b354b5f4648cd96e0bb.tar.gz talos-obmc-linux-dbff124e29fa24aff9705b354b5f4648cd96e0bb.zip |
arm/arm64: KVM: Fix VTTBR_BADDR_MASK and pgd alloc
The current aarch64 calculation for VTTBR_BADDR_MASK masks only 39 bits
and not all the bits in the PA range. This is clearly a bug that
manifests itself on systems that allocate memory in the higher address
space range.
[ Modified from Joel's original patch to be based on PHYS_MASK_SHIFT
instead of a hard-coded value and to move the alignment check of the
allocation to mmu.c. Also added a comment explaining why we hardcode
the IPA range and changed the stage-2 pgd allocation to be based on
the 40 bit IPA range instead of the maximum possible 48 bit PA range.
- Christoffer ]
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Joel Schopp <joel.schopp@amd.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Diffstat (limited to 'arch/arm64/include/asm/kvm_emulate.h')
0 files changed, 0 insertions, 0 deletions