Home
last modified time | relevance | path

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

/linux-6.15/arch/x86/kvm/
H A Dpmu.h32 struct kvm_pmc *(*rdpmc_ecx_to_pmc)(struct kvm_vcpu *vcpu,
34 struct kvm_pmc *(*msr_idx_to_pmc)(struct kvm_vcpu *vcpu, u32 msr);
98 static inline u64 pmc_bitmask(struct kvm_pmc *pmc) in pmc_bitmask()
105 static inline u64 pmc_read_counter(struct kvm_pmc *pmc) in pmc_read_counter()
118 void pmc_write_counter(struct kvm_pmc *pmc, u64 val);
120 static inline bool pmc_is_gp(struct kvm_pmc *pmc) in pmc_is_gp()
125 static inline bool pmc_is_fixed(struct kvm_pmc *pmc) in pmc_is_fixed()
140 static inline struct kvm_pmc *get_gp_pmc(struct kvm_pmu *pmu, u32 msr, in get_gp_pmc()
154 static inline struct kvm_pmc *get_fixed_pmc(struct kvm_pmu *pmu, u32 msr) in get_fixed_pmc()
168 static inline bool pmc_speculative_in_use(struct kvm_pmc *pmc) in pmc_speculative_in_use()
[all …]
H A Dpmu.c230 static bool pmc_pause_counter(struct kvm_pmc *pmc) in pmc_pause_counter()
256 static bool pmc_resume_counter(struct kvm_pmc *pmc) in pmc_resume_counter()
288 static void pmc_stop_counter(struct kvm_pmc *pmc) in pmc_stop_counter()
306 void pmc_write_counter(struct kvm_pmc *pmc, u64 val) in pmc_write_counter()
444 static bool pmc_event_is_allowed(struct kvm_pmc *pmc) in pmc_event_is_allowed()
450 static int reprogram_counter(struct kvm_pmc *pmc) in reprogram_counter()
499 struct kvm_pmc *pmc; in kvm_pmu_handle_event()
585 struct kvm_pmc *pmc; in kvm_pmu_rdpmc()
725 struct kvm_pmc *pmc; in kvm_pmu_reset()
806 struct kvm_pmc *pmc = NULL; in kvm_pmu_cleanup()
[all …]
/linux-6.15/arch/arm64/kvm/
H A Dpmu-emul.c23 static void kvm_pmu_create_perf_event(struct kvm_pmc *pmc);
24 static void kvm_pmu_release_perf_event(struct kvm_pmc *pmc);
25 static bool kvm_pmu_counter_is_enabled(struct kvm_pmc *pmc);
87 static bool kvm_pmc_is_64bit(struct kvm_pmc *pmc) in kvm_pmc_is_64bit()
123 static u64 kvm_pmc_read_evtreg(const struct kvm_pmc *pmc) in kvm_pmc_read_evtreg()
128 static u64 kvm_pmu_get_pmc_value(struct kvm_pmc *pmc) in kvm_pmu_get_pmc_value()
230 static void kvm_pmu_stop_counter(struct kvm_pmc *pmc) in kvm_pmu_stop_counter()
354 struct kvm_pmc *pmc = kvm_vcpu_idx_to_pmc(vcpu, i); in kvm_pmu_reprogram_counter_mask()
493 struct kvm_pmc *pmc = kvm_vcpu_idx_to_pmc(vcpu, i); in kvm_pmu_counter_increment()
638 static bool kvm_pmc_counts_at_el0(struct kvm_pmc *pmc) in kvm_pmc_counts_at_el0()
[all …]
/linux-6.15/arch/x86/kvm/svm/
H A Dpmu.c28 static struct kvm_pmc *amd_pmu_get_pmc(struct kvm_pmu *pmu, int pmc_idx) in amd_pmu_get_pmc()
38 static inline struct kvm_pmc *get_gp_pmc_amd(struct kvm_pmu *pmu, u32 msr, in get_gp_pmc_amd()
87 static struct kvm_pmc *amd_rdpmc_ecx_to_pmc(struct kvm_vcpu *vcpu, in amd_rdpmc_ecx_to_pmc()
93 static struct kvm_pmc *amd_msr_idx_to_pmc(struct kvm_vcpu *vcpu, u32 msr) in amd_msr_idx_to_pmc()
96 struct kvm_pmc *pmc; in amd_msr_idx_to_pmc()
130 struct kvm_pmc *pmc; in amd_pmu_get_msr()
152 struct kvm_pmc *pmc; in amd_pmu_set_msr()
/linux-6.15/arch/riscv/kvm/
H A Dvcpu_pmu.c37 static u64 kvm_pmu_get_sample_period(struct kvm_pmc *pmc) in kvm_pmu_get_sample_period()
78 static void kvm_pmu_release_perf_event(struct kvm_pmc *pmc) in kvm_pmu_release_perf_event()
204 struct kvm_pmc *pmc; in pmu_fw_ctr_read_hi()
234 struct kvm_pmc *pmc; in pmu_ctr_read()
272 struct kvm_pmc *pmc = perf_event->overflow_handler_context; in kvm_riscv_pmu_overflow()
309 static long kvm_pmu_create_perf_event(struct kvm_pmc *pmc, struct perf_event_attr *attr, in kvm_pmu_create_perf_event()
486 struct kvm_pmc *pmc; in kvm_riscv_vcpu_pmu_ctr_start()
563 struct kvm_pmc *pmc; in kvm_riscv_vcpu_pmu_ctr_stop()
664 struct kvm_pmc *pmc = NULL; in kvm_riscv_vcpu_pmu_ctr_cfg_match()
762 struct kvm_pmc *pmc; in kvm_riscv_vcpu_pmu_init()
[all …]
/linux-6.15/arch/x86/kvm/vmx/
H A Dpmu_intel.c39 struct kvm_pmc *pmc; in reprogram_fixed_counters()
58 static struct kvm_pmc *intel_rdpmc_ecx_to_pmc(struct kvm_vcpu *vcpu, in intel_rdpmc_ecx_to_pmc()
63 struct kvm_pmc *counters; in intel_rdpmc_ecx_to_pmc()
124 static inline struct kvm_pmc *get_fw_gp_pmc(struct kvm_pmu *pmu, u32 msr) in get_fw_gp_pmc()
181 static struct kvm_pmc *intel_msr_idx_to_pmc(struct kvm_vcpu *vcpu, u32 msr) in intel_msr_idx_to_pmc()
184 struct kvm_pmc *pmc; in intel_msr_idx_to_pmc()
301 struct kvm_pmc *pmc; in intel_pmu_get_msr()
344 struct kvm_pmc *pmc; in intel_pmu_set_msr()
710 struct kvm_pmc *pmc = NULL; in intel_pmu_cross_mapped_check()
/linux-6.15/arch/riscv/include/asm/
H A Dkvm_vcpu_pmu.h31 struct kvm_pmc { struct
45 struct kvm_pmc pmc[RISCV_KVM_MAX_COUNTERS]; argument
/linux-6.15/include/kvm/
H A Darm_pmu.h16 struct kvm_pmc { struct
29 struct kvm_pmc pmc[KVM_ARMV8_PMU_MAX_COUNTERS]; argument
/linux-6.15/arch/x86/include/asm/
H A Dkvm_host.h506 struct kvm_pmc { struct
565 struct kvm_pmc gp_counters[KVM_MAX_NR_GP_COUNTERS];
566 struct kvm_pmc fixed_counters[KVM_MAX_NR_FIXED_COUNTERS];