summaryrefslogtreecommitdiff
path: root/arch/arm64/kvm/pkvm.c
diff options
context:
space:
mode:
authorVincent Donnefort <vdonnefort@google.com>2025-05-21 13:48:28 +0100
committerMarc Zyngier <maz@kernel.org>2025-05-21 14:33:51 +0100
commitf28f1d02f4eaac05c2ad6bf7264a8696dc21d011 (patch)
treec496de1c6ac1eee4139c5458eb483a943a891c73 /arch/arm64/kvm/pkvm.c
parent4274385ebf090461b46b9bddb0f7c526182ba3c0 (diff)
downloadlwn-f28f1d02f4eaac05c2ad6bf7264a8696dc21d011.tar.gz
lwn-f28f1d02f4eaac05c2ad6bf7264a8696dc21d011.zip
KVM: arm64: Add a range to __pkvm_host_unshare_guest()
In preparation for supporting stage-2 huge mappings for np-guest. Add a nr_pages argument to the __pkvm_host_unshare_guest hypercall. This range supports only two values: 1 or PMD_SIZE / PAGE_SIZE (that is 512 on a 4K-pages system). Signed-off-by: Vincent Donnefort <vdonnefort@google.com> Link: https://lore.kernel.org/r/20250521124834.1070650-5-vdonnefort@google.com Signed-off-by: Marc Zyngier <maz@kernel.org>
Diffstat (limited to 'arch/arm64/kvm/pkvm.c')
-rw-r--r--arch/arm64/kvm/pkvm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/arm64/kvm/pkvm.c b/arch/arm64/kvm/pkvm.c
index 987bc5fb18f9..0c5733be6bf4 100644
--- a/arch/arm64/kvm/pkvm.c
+++ b/arch/arm64/kvm/pkvm.c
@@ -390,7 +390,7 @@ int pkvm_pgtable_stage2_unmap(struct kvm_pgtable *pgt, u64 addr, u64 size)
lockdep_assert_held_write(&kvm->mmu_lock);
for_each_mapping_in_range_safe(pgt, addr, addr + size, mapping) {
- ret = kvm_call_hyp_nvhe(__pkvm_host_unshare_guest, handle, mapping->gfn);
+ ret = kvm_call_hyp_nvhe(__pkvm_host_unshare_guest, handle, mapping->gfn, 1);
if (WARN_ON(ret))
break;
rb_erase(&mapping->node, &pgt->pkvm_mappings);