/* SPDX-License-Identifier: GPL-2.0 */1#ifndef __KVM_X86_VMX_PMU_INTEL_H2#define __KVM_X86_VMX_PMU_INTEL_H34#include <linux/kvm_host.h>56bool intel_pmu_lbr_is_enabled(struct kvm_vcpu *vcpu);7int intel_pmu_create_guest_lbr_event(struct kvm_vcpu *vcpu);89struct lbr_desc {10/* Basic info about guest LBR records. */11struct x86_pmu_lbr records;1213/*14* Emulate LBR feature via passthrough LBR registers when the15* per-vcpu guest LBR event is scheduled on the current pcpu.16*17* The records may be inaccurate if the host reclaims the LBR.18*/19struct perf_event *event;2021/* True if LBRs are marked as not intercepted in the MSR bitmap */22bool msr_passthrough;23};2425extern struct x86_pmu_lbr vmx_lbr_caps;2627#endif /* __KVM_X86_VMX_PMU_INTEL_H */282930