Home
last modified time | relevance | path

Searched refs:kvm_pmc (Results 1 – 7 of 7) sorted by relevance

/Linux-v5.4/arch/x86/kvm/
Dpmu.h26 bool (*pmc_is_enabled)(struct kvm_pmc *pmc);
27 struct kvm_pmc *(*pmc_idx_to_pmc)(struct kvm_pmu *pmu, int pmc_idx);
28 struct kvm_pmc *(*msr_idx_to_pmc)(struct kvm_vcpu *vcpu, unsigned idx,
39 static inline u64 pmc_bitmask(struct kvm_pmc *pmc) in pmc_bitmask()
46 static inline u64 pmc_read_counter(struct kvm_pmc *pmc) in pmc_read_counter()
58 static inline void pmc_stop_counter(struct kvm_pmc *pmc) in pmc_stop_counter()
67 static inline bool pmc_is_gp(struct kvm_pmc *pmc) in pmc_is_gp()
72 static inline bool pmc_is_fixed(struct kvm_pmc *pmc) in pmc_is_fixed()
77 static inline bool pmc_is_enabled(struct kvm_pmc *pmc) in pmc_is_enabled()
86 static inline struct kvm_pmc *get_gp_pmc(struct kvm_pmu *pmu, u32 msr, in get_gp_pmc()
[all …]
Dpmu_amd.c98 static inline struct kvm_pmc *get_gp_pmc_amd(struct kvm_pmu *pmu, u32 msr, in get_gp_pmc_amd()
155 static bool amd_pmc_is_enabled(struct kvm_pmc *pmc) in amd_pmc_is_enabled()
160 static struct kvm_pmc *amd_pmc_idx_to_pmc(struct kvm_pmu *pmu, int pmc_idx) in amd_pmc_idx_to_pmc()
187 static struct kvm_pmc *amd_msr_idx_to_pmc(struct kvm_vcpu *vcpu, unsigned idx, u64 *mask) in amd_msr_idx_to_pmc()
190 struct kvm_pmc *counters; in amd_msr_idx_to_pmc()
214 struct kvm_pmc *pmc; in amd_pmu_get_msr()
235 struct kvm_pmc *pmc; in amd_pmu_set_msr()
297 struct kvm_pmc *pmc = &pmu->gp_counters[i]; in amd_pmu_reset()
Dpmu.c62 struct kvm_pmc *pmc = perf_event->overflow_handler_context; in kvm_perf_overflow()
76 struct kvm_pmc *pmc = perf_event->overflow_handler_context; in kvm_perf_overflow_intr()
99 static void pmc_reprogram_counter(struct kvm_pmc *pmc, u32 type, in pmc_reprogram_counter()
143 void reprogram_gp_counter(struct kvm_pmc *pmc, u64 eventsel) in reprogram_gp_counter()
205 void reprogram_fixed_counter(struct kvm_pmc *pmc, u8 ctrl, int idx) in reprogram_fixed_counter()
237 struct kvm_pmc *pmc = kvm_x86_ops->pmu_ops->pmc_idx_to_pmc(pmu, pmc_idx); in reprogram_counter()
262 struct kvm_pmc *pmc = kvm_x86_ops->pmu_ops->pmc_idx_to_pmc(pmu, bit); in kvm_pmu_handle_event()
317 struct kvm_pmc *pmc; in kvm_pmu_rdpmc()
/Linux-v5.4/virt/kvm/arm/
Dpmu.c32 static struct kvm_vcpu *kvm_pmc_to_vcpu(struct kvm_pmc *pmc) in kvm_pmc_to_vcpu()
47 static bool kvm_pmu_pmc_is_chained(struct kvm_pmc *pmc) in kvm_pmu_pmc_is_chained()
70 static struct kvm_pmc *kvm_pmu_get_canonical_pmc(struct kvm_pmc *pmc) in kvm_pmu_get_canonical_pmc()
105 struct kvm_pmc *pmc) in kvm_pmu_get_pair_counter_value()
143 struct kvm_pmc *pmc = &pmu->pmc[select_idx]; in kvm_pmu_get_counter_value()
178 static void kvm_pmu_release_perf_event(struct kvm_pmc *pmc) in kvm_pmu_release_perf_event()
194 static void kvm_pmu_stop_counter(struct kvm_vcpu *vcpu, struct kvm_pmc *pmc) in kvm_pmu_stop_counter()
286 struct kvm_pmc *pmc; in kvm_pmu_enable_counter_mask()
327 struct kvm_pmc *pmc; in kvm_pmu_disable_counter_mask()
445 struct kvm_pmc *pmc = perf_event->overflow_handler_context; in kvm_pmu_perf_overflow()
[all …]
/Linux-v5.4/arch/x86/kvm/vmx/
Dpmu_intel.c42 struct kvm_pmc *pmc; in reprogram_fixed_counters()
94 static bool intel_pmc_is_enabled(struct kvm_pmc *pmc) in intel_pmc_is_enabled()
101 static struct kvm_pmc *intel_pmc_idx_to_pmc(struct kvm_pmu *pmu, int pmc_idx) in intel_pmc_idx_to_pmc()
125 static struct kvm_pmc *intel_msr_idx_to_pmc(struct kvm_vcpu *vcpu, in intel_msr_idx_to_pmc()
130 struct kvm_pmc *counters; in intel_msr_idx_to_pmc()
168 struct kvm_pmc *pmc; in intel_pmu_get_msr()
204 struct kvm_pmc *pmc; in intel_pmu_set_msr()
343 struct kvm_pmc *pmc = NULL; in intel_pmu_reset()
/Linux-v5.4/include/kvm/
Darm_pmu.h18 struct kvm_pmc { struct
25 struct kvm_pmc pmc[ARMV8_PMU_MAX_COUNTERS]; argument
/Linux-v5.4/arch/x86/include/asm/
Dkvm_host.h450 struct kvm_pmc { struct
472 struct kvm_pmc gp_counters[INTEL_PMC_MAX_GENERIC]; argument
473 struct kvm_pmc fixed_counters[INTEL_PMC_MAX_FIXED];