]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
KVM: arm64: Re-allow hyp tracing HVCs for [nh]VHE
authorVincent Donnefort <vdonnefort@google.com>
Tue, 14 Apr 2026 10:02:31 +0000 (11:02 +0100)
committerMarc Zyngier <maz@kernel.org>
Fri, 17 Apr 2026 14:21:05 +0000 (15:21 +0100)
The introduction of __KVM_HOST_SMCCC_FUNC_MAX_NO_PKVM excluded hyp
tracing HVCs from the common [nh]VHE/pKVM list. Re-allow them.

Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
Link: https://patch.msgid.link/20260414100231.1859687-1-vdonnefort@google.com
Signed-off-by: Marc Zyngier <maz@kernel.org>
arch/arm64/include/asm/kvm_asm.h
arch/arm64/kvm/hyp/nvhe/hyp-main.c

index 37414440cee7f1ce2e31e9e6a3d8263e97eb5cd3..11dcdf4349715c99d699617ad0b100056ad3760b 100644 (file)
@@ -72,6 +72,14 @@ enum __kvm_host_smccc_func {
        __KVM_HOST_SMCCC_FUNC___kvm_tlb_flush_vmid_range,
        __KVM_HOST_SMCCC_FUNC___kvm_flush_cpu_context,
        __KVM_HOST_SMCCC_FUNC___kvm_timer_set_cntvoff,
+       __KVM_HOST_SMCCC_FUNC___tracing_load,
+       __KVM_HOST_SMCCC_FUNC___tracing_unload,
+       __KVM_HOST_SMCCC_FUNC___tracing_enable,
+       __KVM_HOST_SMCCC_FUNC___tracing_swap_reader,
+       __KVM_HOST_SMCCC_FUNC___tracing_update_clock,
+       __KVM_HOST_SMCCC_FUNC___tracing_reset,
+       __KVM_HOST_SMCCC_FUNC___tracing_enable_event,
+       __KVM_HOST_SMCCC_FUNC___tracing_write_event,
        __KVM_HOST_SMCCC_FUNC___vgic_v3_save_aprs,
        __KVM_HOST_SMCCC_FUNC___vgic_v3_restore_vmcr_aprs,
        __KVM_HOST_SMCCC_FUNC___vgic_v5_save_apr,
@@ -100,14 +108,6 @@ enum __kvm_host_smccc_func {
        __KVM_HOST_SMCCC_FUNC___pkvm_vcpu_load,
        __KVM_HOST_SMCCC_FUNC___pkvm_vcpu_put,
        __KVM_HOST_SMCCC_FUNC___pkvm_tlb_flush_vmid,
-       __KVM_HOST_SMCCC_FUNC___tracing_load,
-       __KVM_HOST_SMCCC_FUNC___tracing_unload,
-       __KVM_HOST_SMCCC_FUNC___tracing_enable,
-       __KVM_HOST_SMCCC_FUNC___tracing_swap_reader,
-       __KVM_HOST_SMCCC_FUNC___tracing_update_clock,
-       __KVM_HOST_SMCCC_FUNC___tracing_reset,
-       __KVM_HOST_SMCCC_FUNC___tracing_enable_event,
-       __KVM_HOST_SMCCC_FUNC___tracing_write_event,
 };
 
 #define DECLARE_KVM_VHE_SYM(sym)       extern char sym[]
index 73f2e0221e70323ba57b1dec9ba738d390fe4b22..8f7582d57ab5617fad09eabe0e5b3dd902464175 100644 (file)
@@ -709,6 +709,14 @@ static const hcall_t host_hcall[] = {
        HANDLE_FUNC(__kvm_tlb_flush_vmid_range),
        HANDLE_FUNC(__kvm_flush_cpu_context),
        HANDLE_FUNC(__kvm_timer_set_cntvoff),
+       HANDLE_FUNC(__tracing_load),
+       HANDLE_FUNC(__tracing_unload),
+       HANDLE_FUNC(__tracing_enable),
+       HANDLE_FUNC(__tracing_swap_reader),
+       HANDLE_FUNC(__tracing_update_clock),
+       HANDLE_FUNC(__tracing_reset),
+       HANDLE_FUNC(__tracing_enable_event),
+       HANDLE_FUNC(__tracing_write_event),
        HANDLE_FUNC(__vgic_v3_save_aprs),
        HANDLE_FUNC(__vgic_v3_restore_vmcr_aprs),
        HANDLE_FUNC(__vgic_v5_save_apr),
@@ -735,14 +743,6 @@ static const hcall_t host_hcall[] = {
        HANDLE_FUNC(__pkvm_vcpu_load),
        HANDLE_FUNC(__pkvm_vcpu_put),
        HANDLE_FUNC(__pkvm_tlb_flush_vmid),
-       HANDLE_FUNC(__tracing_load),
-       HANDLE_FUNC(__tracing_unload),
-       HANDLE_FUNC(__tracing_enable),
-       HANDLE_FUNC(__tracing_swap_reader),
-       HANDLE_FUNC(__tracing_update_clock),
-       HANDLE_FUNC(__tracing_reset),
-       HANDLE_FUNC(__tracing_enable_event),
-       HANDLE_FUNC(__tracing_write_event),
 };
 
 static void handle_host_hcall(struct kvm_cpu_context *host_ctxt)