xref: /linux/arch/x86/include/asm/kvm-x86-pmu-ops.h (revision 24bce201d79807b668bf9d9e0aca801c5c0d5f78)
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(pmc_perf_hw_id)
16 KVM_X86_PMU_OP(pmc_is_enabled)
17 KVM_X86_PMU_OP(pmc_idx_to_pmc)
18 KVM_X86_PMU_OP(rdpmc_ecx_to_pmc)
19 KVM_X86_PMU_OP(msr_idx_to_pmc)
20 KVM_X86_PMU_OP(is_valid_rdpmc_ecx)
21 KVM_X86_PMU_OP(is_valid_msr)
22 KVM_X86_PMU_OP(get_msr)
23 KVM_X86_PMU_OP(set_msr)
24 KVM_X86_PMU_OP(refresh)
25 KVM_X86_PMU_OP(init)
26 KVM_X86_PMU_OP(reset)
27 KVM_X86_PMU_OP_OPTIONAL(deliver_pmi)
28 KVM_X86_PMU_OP_OPTIONAL(cleanup)
29 
30 #undef KVM_X86_PMU_OP
31 #undef KVM_X86_PMU_OP_OPTIONAL
32