/kernel/linux/linux-6.6/arch/x86/kvm/vmx/ |
H A D | pmu_intel.c | 312 struct msr_data *msr_info, bool read) in intel_pmu_handle_lbr_msrs_access() 315 u32 index = msr_info->index; in intel_pmu_handle_lbr_msrs_access() 332 rdmsrl(index, msr_info->data); in intel_pmu_handle_lbr_msrs_access() 334 wrmsrl(index, msr_info->data); in intel_pmu_handle_lbr_msrs_access() 344 msr_info->data = 0; in intel_pmu_handle_lbr_msrs_access() 348 static int intel_pmu_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in intel_pmu_get_msr() argument 352 u32 msr = msr_info->index; in intel_pmu_get_msr() 356 msr_info->data = pmu->fixed_ctr_ctrl; in intel_pmu_get_msr() 359 msr_info->data = pmu->pebs_enable; in intel_pmu_get_msr() 362 msr_info in intel_pmu_get_msr() 311 intel_pmu_handle_lbr_msrs_access(struct kvm_vcpu *vcpu, struct msr_data *msr_info, bool read) intel_pmu_handle_lbr_msrs_access() argument 391 intel_pmu_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) intel_pmu_set_msr() argument [all...] |
H A D | vmx.c | 1986 * Reads an msr value (of 'msr_info->index') into 'msr_info->data'. 1990 static int vmx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in vmx_get_msr() argument 1996 switch (msr_info->index) { in vmx_get_msr() 1999 msr_info->data = vmcs_readl(GUEST_FS_BASE); in vmx_get_msr() 2002 msr_info->data = vmcs_readl(GUEST_GS_BASE); in vmx_get_msr() 2005 msr_info->data = vmx_read_guest_kernel_gs_base(vmx); in vmx_get_msr() 2009 return kvm_get_msr_common(vcpu, msr_info); in vmx_get_msr() 2011 if (!msr_info->host_initiated && in vmx_get_msr() 2016 if (!msr_info in vmx_get_msr() 2169 vmx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) vmx_set_msr() argument [all...] |
/kernel/linux/linux-5.10/arch/x86/lib/ |
H A D | msr-smp.c | 10 struct msr_info *rv = info; in __rdmsr_on_cpu() 24 struct msr_info *rv = info; in __wrmsr_on_cpu() 39 struct msr_info rv; in rdmsr_on_cpu() 55 struct msr_info rv; in rdmsrl_on_cpu() 70 struct msr_info rv; in wrmsr_on_cpu() 86 struct msr_info rv; in wrmsrl_on_cpu() 103 struct msr_info rv; in __rwmsr_on_cpus() 148 struct msr_info msr; 164 struct msr_info *rv = info; in __wrmsr_safe_on_cpu() 197 struct msr_info r in wrmsr_safe_on_cpu() [all...] |
/kernel/linux/linux-6.6/arch/x86/lib/ |
H A D | msr-smp.c | 10 struct msr_info *rv = info; in __rdmsr_on_cpu() 24 struct msr_info *rv = info; in __wrmsr_on_cpu() 39 struct msr_info rv; in rdmsr_on_cpu() 55 struct msr_info rv; in rdmsrl_on_cpu() 70 struct msr_info rv; in wrmsr_on_cpu() 86 struct msr_info rv; in wrmsrl_on_cpu() 103 struct msr_info rv; in __rwmsr_on_cpus() 148 struct msr_info msr; 164 struct msr_info *rv = info; in __wrmsr_safe_on_cpu() 196 struct msr_info r in wrmsr_safe_on_cpu() [all...] |
/kernel/linux/linux-5.10/arch/x86/kvm/vmx/ |
H A D | pmu_intel.c | 214 static int intel_pmu_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in intel_pmu_get_msr() argument 218 u32 msr = msr_info->index; in intel_pmu_get_msr() 222 msr_info->data = pmu->fixed_ctr_ctrl; in intel_pmu_get_msr() 225 msr_info->data = pmu->global_status; in intel_pmu_get_msr() 228 msr_info->data = pmu->global_ctrl; in intel_pmu_get_msr() 231 msr_info->data = pmu->global_ovf_ctrl; in intel_pmu_get_msr() 237 msr_info->data = in intel_pmu_get_msr() 242 msr_info->data = in intel_pmu_get_msr() 246 msr_info->data = pmc->eventsel; in intel_pmu_get_msr() 254 static int intel_pmu_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in intel_pmu_set_msr() argument [all...] |
H A D | vmx.c | 1890 static int vmx_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in vmx_get_msr() argument 1896 switch (msr_info->index) { in vmx_get_msr() 1899 msr_info->data = vmcs_readl(GUEST_FS_BASE); in vmx_get_msr() 1902 msr_info->data = vmcs_readl(GUEST_GS_BASE); in vmx_get_msr() 1905 msr_info->data = vmx_read_guest_kernel_gs_base(vmx); in vmx_get_msr() 1909 return kvm_get_msr_common(vcpu, msr_info); in vmx_get_msr() 1911 if (!msr_info->host_initiated && in vmx_get_msr() 1916 if (!msr_info->host_initiated && !vmx_has_waitpkg(vmx)) in vmx_get_msr() 1919 msr_info->data = vmx->msr_ia32_umwait_control; in vmx_get_msr() 1922 if (!msr_info in vmx_get_msr() 2051 vmx_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) vmx_set_msr() argument [all...] |
/kernel/linux/linux-6.6/arch/x86/kvm/svm/ |
H A D | pmu.c | 131 static int amd_pmu_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in amd_pmu_get_msr() argument 135 u32 msr = msr_info->index; in amd_pmu_get_msr() 140 msr_info->data = pmc_read_counter(pmc); in amd_pmu_get_msr() 146 msr_info->data = pmc->eventsel; in amd_pmu_get_msr() 153 static int amd_pmu_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in amd_pmu_set_msr() argument 157 u32 msr = msr_info->index; in amd_pmu_set_msr() 158 u64 data = msr_info->data; in amd_pmu_set_msr()
|
H A D | svm.c | 2811 struct msr_data msr_info; in efer_trap() local 2820 msr_info.host_initiated = false; in efer_trap() 2821 msr_info.index = MSR_EFER; in efer_trap() 2822 msr_info.data = to_svm(vcpu)->vmcb->control.exit_info_1 & ~EFER_SVME; in efer_trap() 2823 ret = kvm_set_msr_common(vcpu, &msr_info); in efer_trap() 2844 static int svm_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in svm_get_msr() argument 2848 switch (msr_info->index) { in svm_get_msr() 2850 if (!msr_info->host_initiated && in svm_get_msr() 2853 msr_info->data = svm->tsc_ratio_msr; in svm_get_msr() 2856 msr_info in svm_get_msr() [all...] |
/kernel/linux/linux-5.10/arch/x86/kvm/svm/ |
H A D | pmu.c | 240 static int amd_pmu_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in amd_pmu_get_msr() argument 244 u32 msr = msr_info->index; in amd_pmu_get_msr() 249 msr_info->data = pmc_read_counter(pmc); in amd_pmu_get_msr() 255 msr_info->data = pmc->eventsel; in amd_pmu_get_msr() 262 static int amd_pmu_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in amd_pmu_set_msr() argument 266 u32 msr = msr_info->index; in amd_pmu_set_msr() 267 u64 data = msr_info->data; in amd_pmu_set_msr()
|
H A D | svm.c | 2488 static int svm_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in svm_get_msr() argument 2492 switch (msr_info->index) { in svm_get_msr() 2494 msr_info->data = svm->vmcb->save.star; in svm_get_msr() 2498 msr_info->data = svm->vmcb->save.lstar; in svm_get_msr() 2501 msr_info->data = svm->vmcb->save.cstar; in svm_get_msr() 2504 msr_info->data = svm->vmcb->save.kernel_gs_base; in svm_get_msr() 2507 msr_info->data = svm->vmcb->save.sfmask; in svm_get_msr() 2511 msr_info->data = svm->vmcb->save.sysenter_cs; in svm_get_msr() 2514 msr_info->data = svm->sysenter_eip; in svm_get_msr() 2517 msr_info in svm_get_msr() [all...] |
/kernel/linux/linux-5.10/arch/x86/kvm/ |
H A D | pmu.h | 36 int (*get_msr)(struct kvm_vcpu *vcpu, struct msr_data *msr_info); 37 int (*set_msr)(struct kvm_vcpu *vcpu, struct msr_data *msr_info); 151 int kvm_pmu_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info); 152 int kvm_pmu_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info);
|
H A D | x86.c | 410 int kvm_set_apic_base(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in kvm_set_apic_base() argument 413 enum lapic_mode new_mode = kvm_apic_mode(msr_info->data); in kvm_set_apic_base() 417 if ((msr_info->data & reserved_bits) != 0 || new_mode == LAPIC_MODE_INVALID) in kvm_set_apic_base() 419 if (!msr_info->host_initiated) { in kvm_set_apic_base() 426 kvm_lapic_set_base(vcpu, msr_info->data); in kvm_set_apic_base() 1523 static int set_efer(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in set_efer() argument 1526 u64 efer = msr_info->data; in set_efer() 1532 if (!msr_info->host_initiated) { in set_efer() 2873 static int set_msr_mce(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in set_msr_mce() argument 2877 u32 msr = msr_info in set_msr_mce() 3125 kvm_set_msr_common(struct kvm_vcpu *vcpu, struct msr_data *msr_info) kvm_set_msr_common() argument 3472 kvm_get_msr_common(struct kvm_vcpu *vcpu, struct msr_data *msr_info) kvm_get_msr_common() argument [all...] |
H A D | pmu.c | 407 int kvm_pmu_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in kvm_pmu_get_msr() argument 409 return kvm_x86_ops.pmu_ops->get_msr(vcpu, msr_info); in kvm_pmu_get_msr() 412 int kvm_pmu_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in kvm_pmu_set_msr() argument 414 kvm_pmu_mark_pmc_in_use(vcpu, msr_info->index); in kvm_pmu_set_msr() 415 return kvm_x86_ops.pmu_ops->set_msr(vcpu, msr_info); in kvm_pmu_set_msr()
|
H A D | lapic.h | 106 int kvm_set_apic_base(struct kvm_vcpu *vcpu, struct msr_data *msr_info);
|
/kernel/linux/linux-6.6/arch/x86/kvm/ |
H A D | pmu.c | 576 int kvm_pmu_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in kvm_pmu_get_msr() argument 579 u32 msr = msr_info->index; in kvm_pmu_get_msr() 584 msr_info->data = pmu->global_status; in kvm_pmu_get_msr() 588 msr_info->data = pmu->global_ctrl; in kvm_pmu_get_msr() 592 msr_info->data = 0; in kvm_pmu_get_msr() 595 return static_call(kvm_x86_pmu_get_msr)(vcpu, msr_info); in kvm_pmu_get_msr() 601 int kvm_pmu_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in kvm_pmu_set_msr() argument 604 u32 msr = msr_info->index; in kvm_pmu_set_msr() 605 u64 data = msr_info->data; in kvm_pmu_set_msr() 614 if (!msr_info in kvm_pmu_set_msr() [all...] |
H A D | pmu.h | 29 int (*get_msr)(struct kvm_vcpu *vcpu, struct msr_data *msr_info); 30 int (*set_msr)(struct kvm_vcpu *vcpu, struct msr_data *msr_info); 243 int kvm_pmu_get_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info); 244 int kvm_pmu_set_msr(struct kvm_vcpu *vcpu, struct msr_data *msr_info);
|
H A D | x86.c | 485 int kvm_set_apic_base(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in kvm_set_apic_base() argument 488 enum lapic_mode new_mode = kvm_apic_mode(msr_info->data); in kvm_set_apic_base() 492 if ((msr_info->data & reserved_bits) != 0 || new_mode == LAPIC_MODE_INVALID) in kvm_set_apic_base() 494 if (!msr_info->host_initiated) { in kvm_set_apic_base() 501 kvm_lapic_set_base(vcpu, msr_info->data); in kvm_set_apic_base() 1755 static int set_efer(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in set_efer() argument 1758 u64 efer = msr_info->data; in set_efer() 1764 if (!msr_info->host_initiated) { in set_efer() 3326 static int set_msr_mce(struct kvm_vcpu *vcpu, struct msr_data *msr_info) in set_msr_mce() argument 3330 u32 msr = msr_info in set_msr_mce() 3632 kvm_set_msr_common(struct kvm_vcpu *vcpu, struct msr_data *msr_info) kvm_set_msr_common() argument 4053 kvm_get_msr_common(struct kvm_vcpu *vcpu, struct msr_data *msr_info) kvm_get_msr_common() argument [all...] |
H A D | lapic.h | 123 int kvm_set_apic_base(struct kvm_vcpu *vcpu, struct msr_data *msr_info);
|
/kernel/linux/linux-5.10/arch/x86/include/asm/ |
H A D | msr.h | 24 struct msr_info { struct 38 struct msr_info info;
|
/kernel/linux/linux-6.6/arch/x86/include/asm/ |
H A D | msr.h | 15 struct msr_info { struct 29 struct msr_info info;
|