Commit ccab51d6 authored by Vincent Donnefort's avatar Vincent Donnefort Committed by Marc Zyngier
Browse files

KVM: arm64: Re-allow hyp tracing HVCs for [nh]VHE



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: default avatarVincent Donnefort <vdonnefort@google.com>
Link: https://patch.msgid.link/20260414100231.1859687-1-vdonnefort@google.com


Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
parent 94b4ae79
Loading
Loading
Loading
Loading
+8 −8
Original line number Diff line number Diff line
@@ -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[]
+8 −8
Original line number Diff line number Diff line
@@ -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)