KVM: arm64: Rename SMC/HVC call handler to reflect reality
authorOliver Upton <oliver.upton@linux.dev>
Tue, 4 Apr 2023 15:40:41 +0000 (15:40 +0000)
committerMarc Zyngier <maz@kernel.org>
Wed, 5 Apr 2023 11:07:41 +0000 (12:07 +0100)
KVM handles SMCCC calls from virtual EL2 that use the SMC instruction
since commit bd36b1a9eb5a ("KVM: arm64: nv: Handle SMCs taken from
virtual EL2"). Thus, the function name of the handler no longer reflects
reality.

Normalize the name on SMCCC, since that's the only hypercall interface
KVM supports in the first place. No fuctional change intended.

Reviewed-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Oliver Upton <oliver.upton@linux.dev>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20230404154050.2270077-5-oliver.upton@linux.dev
arch/arm64/kvm/handle_exit.c
arch/arm64/kvm/hypercalls.c
include/kvm/arm_hypercalls.h

index a798c0b..5e4f973 100644 (file)
@@ -52,7 +52,7 @@ static int handle_hvc(struct kvm_vcpu *vcpu)
                return 1;
        }
 
-       ret = kvm_hvc_call_handler(vcpu);
+       ret = kvm_smccc_call_handler(vcpu);
        if (ret < 0) {
                vcpu_set_reg(vcpu, 0, ~0UL);
                return 1;
@@ -89,7 +89,7 @@ static int handle_smc(struct kvm_vcpu *vcpu)
         * at Non-secure EL1 is trapped to EL2 if HCR_EL2.TSC==1, rather than
         * being treated as UNDEFINED.
         */
-       ret = kvm_hvc_call_handler(vcpu);
+       ret = kvm_smccc_call_handler(vcpu);
        if (ret < 0)
                vcpu_set_reg(vcpu, 0, ~0UL);
 
index a09a526..5ead6c6 100644 (file)
@@ -121,7 +121,7 @@ static bool kvm_hvc_call_allowed(struct kvm_vcpu *vcpu, u32 func_id)
        }
 }
 
-int kvm_hvc_call_handler(struct kvm_vcpu *vcpu)
+int kvm_smccc_call_handler(struct kvm_vcpu *vcpu)
 {
        struct kvm_smccc_features *smccc_feat = &vcpu->kvm->arch.smccc_feat;
        u32 func_id = smccc_get_function(vcpu);
index 1188f11..8f4e33b 100644 (file)
@@ -6,7 +6,7 @@
 
 #include <asm/kvm_emulate.h>
 
-int kvm_hvc_call_handler(struct kvm_vcpu *vcpu);
+int kvm_smccc_call_handler(struct kvm_vcpu *vcpu);
 
 static inline u32 smccc_get_function(struct kvm_vcpu *vcpu)
 {