Lines Matching defs:vcpu
41 struct kvm_vcpu *vcpu = pmu_to_vcpu(pmu);
44 if (!vcpu->kvm->arch.enable_pmu)
49 if (!guest_cpuid_has(vcpu, X86_FEATURE_PERFCTR_CORE))
76 static int amd_check_rdpmc_early(struct kvm_vcpu *vcpu, unsigned int idx)
78 struct kvm_pmu *pmu = vcpu_to_pmu(vcpu);
87 static struct kvm_pmc *amd_rdpmc_ecx_to_pmc(struct kvm_vcpu *vcpu,
90 return amd_pmu_get_pmc(vcpu_to_pmu(vcpu), idx);
93 static struct kvm_pmc *amd_msr_idx_to_pmc(struct kvm_vcpu *vcpu, u32 msr)
95 struct kvm_pmu *pmu = vcpu_to_pmu(vcpu);
104 static bool amd_is_valid_msr(struct kvm_vcpu *vcpu, u32 msr)
106 struct kvm_pmu *pmu = vcpu_to_pmu(vcpu);
112 return guest_cpuid_has(vcpu, X86_FEATURE_PERFCTR_CORE);
124 return amd_msr_idx_to_pmc(vcpu, msr);
127 static int amd_pmu_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info)
129 struct kvm_pmu *pmu = vcpu_to_pmu(vcpu);
149 static int amd_pmu_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info)
151 struct kvm_pmu *pmu = vcpu_to_pmu(vcpu);
176 static void amd_pmu_refresh(struct kvm_vcpu *vcpu)
178 struct kvm_pmu *pmu = vcpu_to_pmu(vcpu);
182 if (guest_cpuid_has(vcpu, X86_FEATURE_PERFMON_V2)) {
190 ebx.full = kvm_find_cpuid_entry_index(vcpu, 0x80000022, 0)->ebx;
192 } else if (guest_cpuid_has(vcpu, X86_FEATURE_PERFCTR_CORE)) {
215 static void amd_pmu_init(struct kvm_vcpu *vcpu)
217 struct kvm_pmu *pmu = vcpu_to_pmu(vcpu);
225 pmu->gp_counters[i].vcpu = vcpu;