xref: /linux/arch/x86/include/asm/kvm-x86-pmu-ops.h (revision 8e07e0e3964ca4e23ce7b68e2096fe660a888942)
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #if !defined(KVM_X86_PMU_OP) || !defined(KVM_X86_PMU_OP_OPTIONAL)
3 BUILD_BUG_ON(1)
4 #endif
5 
6 /*
7  * KVM_X86_PMU_OP() and KVM_X86_PMU_OP_OPTIONAL() are used to help generate
8  * both DECLARE/DEFINE_STATIC_CALL() invocations and
9  * "static_call_update()" calls.
10  *
11  * KVM_X86_PMU_OP_OPTIONAL() can be used for those functions that can have
12  * a NULL definition, for example if "static_call_cond()" will be used
13  * at the call sites.
14  */
15 KVM_X86_PMU_OP(hw_event_available)
16 KVM_X86_PMU_OP(pmc_idx_to_pmc)
17 KVM_X86_PMU_OP(rdpmc_ecx_to_pmc)
18 KVM_X86_PMU_OP(msr_idx_to_pmc)
19 KVM_X86_PMU_OP(is_valid_rdpmc_ecx)
20 KVM_X86_PMU_OP(is_valid_msr)
21 KVM_X86_PMU_OP(get_msr)
22 KVM_X86_PMU_OP(set_msr)
23 KVM_X86_PMU_OP(refresh)
24 KVM_X86_PMU_OP(init)
25 KVM_X86_PMU_OP(reset)
26 KVM_X86_PMU_OP_OPTIONAL(deliver_pmi)
27 KVM_X86_PMU_OP_OPTIONAL(cleanup)
28 
29 #undef KVM_X86_PMU_OP
30 #undef KVM_X86_PMU_OP_OPTIONAL
31