[PATCH v22 13/23] KVM: arm64: Abstract out memory abort handling

Suzuki K Poulose suzuki.poulose at arm.com
Mon Oct 5 22:25:57 PDT 2026


On 06/10/2026 04:07, Gavin Shan wrote:
> On 10/5/26 7:07 PM, Suzuki K Poulose wrote:
>> Move the memory abort handling under VM specific s2 operation.
>>
>> Tested-by: Gavin Shan <gshan at redhat.com>
>> Signed-off-by: Suzuki K Poulose <suzuki.poulose at arm.com>
>> ---
>> Changes since v21:
>>   - Rename protected_vm_mem_abort => protected_pkvm_mem_abort for 
>> consistency
>>     with the other callbacks.
>> ---
>>   arch/arm64/include/asm/kvm_host.h |  2 ++
>>   arch/arm64/kvm/mmu.c              | 33 ++++++++++++++++++-------------
>>   2 files changed, 21 insertions(+), 14 deletions(-)
>>
> 
> One nitpick below. In either way:
> 
> Reviewed-by: Gavin Shan <gshan at redhat.com>

Thanks Gavin !

...

>> +static int kvm_vm_mem_abort(const struct kvm_s2_fault_desc *s2fd)
>> +{
>> +    struct kvm_vcpu *vcpu = s2fd->vcpu;
>> +
>> +    VM_WARN_ON_ONCE(kvm_vcpu_trap_is_permission_fault(vcpu) &&
>> +            !kvm_is_write_fault(vcpu) &&
>> +            !kvm_vcpu_trap_is_exec_fault(vcpu));
>> +
>> +    if (kvm_slot_has_gmem(s2fd->memslot))
>> +        return gmem_abort(s2fd);
>> +    else
>> +        return user_mem_abort(s2fd);
>> +}
> 
> The "if...else" block is moved from kvm_handle_guest_abort(), but it 
> might be
> clearer if we have:
> 
>      if (kvm_slot_has_gmem(s2fd->memslot))
>          return gmem_abort(s2fd);
> 
>      return user_mem_abort(s2fd);

This was chosen based on another review comment. So, lets stick with 
this now.

Cheers
Suzuki



More information about the linux-arm-kernel mailing list