[PATCH v19 08/20] KVM: arm64: Reuse kvm_stage2_unmap_range in kvm_unmap_gfn_range

Jonathan Cameron jonathan.cameron at oss.qualcomm.com
Tue Sep 22 15:15:10 PDT 2026


On Sun, 20 Sep 2026 22:28:33 +0100
Suzuki K Poulose <suzuki.poulose at arm.com> wrote:

> In preparation for adding VM specific backends for stage2 operation,
> switch to kvm_stage2_unmap_range() instead of __unmap_stage2_range()
> from the kvm_unmap_gfn_range(). Drop the bail out check for protected
> VMs and defer that to the one in kvm_stage2_unmap_range(). Later we
> would replace the logic in kvm_stage2_unmap_range() with VM specific
> backends.
> 
> No functional changes intended.
> 
> Reviewed-by: Fuad Tabba <fuad.tabba at linux.dev>
> Signed-off-by: Suzuki K Poulose <suzuki.poulose at arm.com>

Trivial thing inline. Otherwise this is fine.

Reviewed-by: Jonathan Cameron <jonathan.cameron at oss.qualcomm.com>

> ---
>  arch/arm64/kvm/mmu.c | 8 ++++----
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/arch/arm64/kvm/mmu.c b/arch/arm64/kvm/mmu.c
> index 0f4e8b71fa85d..03f2017a7404a 100644
> --- a/arch/arm64/kvm/mmu.c
> +++ b/arch/arm64/kvm/mmu.c
> @@ -2436,12 +2436,12 @@ int kvm_handle_guest_abort(struct kvm_vcpu *vcpu)
>  
>  bool kvm_unmap_gfn_range(struct kvm *kvm, struct kvm_gfn_range *range)
>  {
> -	if (!kvm->arch.mmu.pgt || kvm_vm_is_protected(kvm))
> +	if (!kvm->arch.mmu.pgt)
>  		return false;
>  
> -	__unmap_stage2_range(&kvm->arch.mmu, range->start << PAGE_SHIFT,
> -			     (range->end - range->start) << PAGE_SHIFT,
> -			     range->may_block);
> +	kvm_stage2_unmap_range(&kvm->arch.mmu, range->start << PAGE_SHIFT,
> +				(range->end - range->start) << PAGE_SHIFT,

Looks like indent is 1 too many space.

> +				range->may_block);
>  
>  	kvm_nested_s2_unmap(kvm, range->may_block);
>  	return false;




More information about the linux-arm-kernel mailing list