diff options
author | Quentin Perret <qperret@google.com> | 2021-12-08 15:22:58 +0000 |
---|---|---|
committer | Marc Zyngier <maz@kernel.org> | 2021-12-15 14:17:31 +0000 |
commit | bff01cb6b1bf68052739eb6155132f7d6d974208 (patch) | |
tree | 48ac3c005bd16b76e5e62a7e039d0657b80d54d7 /arch/arm64 | |
parent | 473a3efbafaa9ffd06c8b8f653f24c97b5ac3ff0 (diff) | |
download | linux-bff01cb6b1bf68052739eb6155132f7d6d974208.tar.bz2 |
KVM: arm64: pkvm: Stub io map functions
Now that GICv2 is disabled in nVHE protected mode there should be no
other reason for the host to use create_hyp_io_mappings() or
kvm_phys_addr_ioremap(). Add sanity checks to make sure that assumption
remains true looking forward.
Signed-off-by: Quentin Perret <qperret@google.com>
Acked-by: Will Deacon <will@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211208152300.2478542-6-qperret@google.com
Diffstat (limited to 'arch/arm64')
-rw-r--r-- | arch/arm64/kvm/mmu.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/arm64/kvm/mmu.c b/arch/arm64/kvm/mmu.c index 326cdfec74a1..605c104eb030 100644 --- a/arch/arm64/kvm/mmu.c +++ b/arch/arm64/kvm/mmu.c @@ -407,6 +407,9 @@ int create_hyp_io_mappings(phys_addr_t phys_addr, size_t size, unsigned long addr; int ret; + if (is_protected_kvm_enabled()) + return -EPERM; + *kaddr = ioremap(phys_addr, size); if (!*kaddr) return -ENOMEM; @@ -650,6 +653,9 @@ int kvm_phys_addr_ioremap(struct kvm *kvm, phys_addr_t guest_ipa, KVM_PGTABLE_PROT_R | (writable ? KVM_PGTABLE_PROT_W : 0); + if (is_protected_kvm_enabled()) + return -EPERM; + size += offset_in_page(guest_ipa); guest_ipa &= PAGE_MASK; |