linux-stable/arch/arm64/kvm
Ard Biesheuvel e4c5a68510 arm64: KVM: use ID map with increased VA range if required
This patch modifies the HYP init code so it can deal with system
RAM residing at an offset which exceeds the reach of VA_BITS.

Like for EL1, this involves configuring an additional level of
translation for the ID map. However, in case of EL2, this implies
that all translations use the extra level, as we cannot seamlessly
switch between translation tables with different numbers of
translation levels.

So add an extra translation table at the root level. Since the
ID map and the runtime HYP map are guaranteed not to overlap, they
can share this root level, and we can essentially merge these two
tables into one.

Tested-by: Marc Zyngier <marc.zyngier@arm.com>
Reviewed-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
2015-03-23 11:35:29 +00:00
..
emulate.c arm64: kvm: move to ESR_ELx macros 2015-01-15 12:24:25 +00:00
guest.c arm/arm64: KVM: Clarify KVM_ARM_VCPU_INIT ABI 2014-12-13 14:15:26 +01:00
handle_exit.c KVM/ARM changes for v3.20 including GICv3 emulation, dirty page logging, added 2015-01-23 13:39:51 +01:00
hyp-init.S arm64: KVM: use ID map with increased VA range if required 2015-03-23 11:35:29 +00:00
hyp.S Fairly small update, but there are some interesting new features. 2015-02-13 09:55:09 -08:00
inject_fault.c arm64: kvm: move to ESR_ELx macros 2015-01-15 12:24:25 +00:00
Kconfig Fairly small update, but there are some interesting new features. 2015-02-13 09:55:09 -08:00
Makefile arm/arm64: KVM: add virtual GICv3 distributor emulation 2015-01-20 18:25:31 +01:00
regmap.c arm64: KVM: 32bit GP register access 2013-06-12 16:42:14 +01:00
reset.c arm64: KVM: Fix HCR setting for 32bit guests 2015-01-12 11:15:30 +01:00
sys_regs.c Fairly small update, but there are some interesting new features. 2015-02-13 09:55:09 -08:00
sys_regs.h arm64: KVM: allows discrimination of AArch32 sysreg access 2014-03-03 01:15:21 +00:00
sys_regs_generic_v8.c arm64: KVM: Enable minimalistic support for Cortex-A53 2014-05-25 20:05:30 +02:00
trace.h arm/arm64: KVM: add tracing support for arm64 exit handler 2015-01-15 12:43:30 +01:00
vgic-v2-switch.S arm/arm64: KVM: Fix BE accesses to GICv2 EISR and ELRSR regs 2014-10-16 10:57:41 +02:00
vgic-v3-switch.S arm/arm64: KVM: make the value of ICC_SRE_EL1 a per-VM variable 2015-01-20 18:25:28 +01:00