diff options
author | Marc Zyngier <marc.zyngier@arm.com> | 2018-02-15 11:47:14 +0000 |
---|---|---|
committer | Marc Zyngier <marc.zyngier@arm.com> | 2018-03-19 13:06:46 +0000 |
commit | dee39247dc75465a24990cb1772c6aaced5fd910 (patch) | |
tree | fb6f241d24eaee60ad33127a318521dccae02661 /Documentation/arm64 | |
parent | 4205a89b8060141ac0216a507b9f70728f056a10 (diff) | |
download | lwn-dee39247dc75465a24990cb1772c6aaced5fd910.tar.gz lwn-dee39247dc75465a24990cb1772c6aaced5fd910.zip |
arm64: KVM: Allow mapping of vectors outside of the RAM region
We're now ready to map our vectors in weird and wonderful locations.
On enabling ARM64_HARDEN_EL2_VECTORS, a vector slot gets allocated
if this hasn't been already done via ARM64_HARDEN_BRANCH_PREDICTOR
and gets mapped outside of the normal RAM region, next to the
idmap.
That way, being able to obtain VBAR_EL2 doesn't reveal the mapping
of the rest of the hypervisor code.
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Diffstat (limited to 'Documentation/arm64')
-rw-r--r-- | Documentation/arm64/memory.txt | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Documentation/arm64/memory.txt b/Documentation/arm64/memory.txt index c58cc5dbe667..c5dab30d3389 100644 --- a/Documentation/arm64/memory.txt +++ b/Documentation/arm64/memory.txt @@ -90,7 +90,8 @@ When using KVM without the Virtualization Host Extensions, the hypervisor maps kernel pages in EL2 at a fixed (and potentially random) offset from the linear mapping. See the kern_hyp_va macro and kvm_update_va_mask function for more details. MMIO devices such as -GICv2 gets mapped next to the HYP idmap page. +GICv2 gets mapped next to the HYP idmap page, as do vectors when +ARM64_HARDEN_EL2_VECTORS is selected for particular CPUs. When using KVM with the Virtualization Host Extensions, no additional mappings are created, since the host kernel runs directly in EL2. |