Home
last modified time | relevance | path

Searched refs:msrs (Results 1 – 14 of 14) sorted by relevance

/Linux-v5.15/arch/x86/kvm/vmx/
Dnested.h20 void nested_vmx_setup_ctls_msrs(struct nested_vmx_msrs *msrs, u32 ept_caps);
32 int vmx_get_vmx_msr(struct nested_vmx_msrs *msrs, u32 msr_index, u64 *pdata);
100 return vmx_misc_cr3_count(to_vmx(vcpu)->nested.msrs.misc_low); in nested_cpu_vmx_misc_cr3_count()
110 return to_vmx(vcpu)->nested.msrs.misc_low & in nested_cpu_has_vmwrite_any_field()
116 return to_vmx(vcpu)->nested.msrs.misc_low & VMX_MISC_ZERO_LEN_INS; in nested_cpu_has_zero_length_injection()
121 return to_vmx(vcpu)->nested.msrs.procbased_ctls_high & in nested_cpu_supports_monitor_trap_flag()
127 return to_vmx(vcpu)->nested.msrs.secondary_ctls_high & in nested_cpu_has_vmx_shadow_vmcs()
258 u64 fixed0 = to_vmx(vcpu)->nested.msrs.cr0_fixed0; in nested_guest_cr0_valid()
259 u64 fixed1 = to_vmx(vcpu)->nested.msrs.cr0_fixed1; in nested_guest_cr0_valid()
262 if (to_vmx(vcpu)->nested.msrs.secondary_ctls_high & in nested_guest_cr0_valid()
[all …]
Dnested.c394 to_vmx(vcpu)->nested.msrs.ept_caps & in nested_ept_new_eptp()
921 u64 vmx_misc = vmx_control_msr(vmx->nested.msrs.misc_low, in nested_vmx_max_atomic_switch_msrs()
922 vmx->nested.msrs.misc_high); in nested_vmx_max_atomic_switch_msrs()
1234 u64 vmx_basic = vmx->nested.msrs.basic; in vmx_restore_vmx_basic()
1253 vmx->nested.msrs.basic = data; in vmx_restore_vmx_basic()
1265 lowp = &vmx->nested.msrs.pinbased_ctls_low; in vmx_restore_control_msr()
1266 highp = &vmx->nested.msrs.pinbased_ctls_high; in vmx_restore_control_msr()
1269 lowp = &vmx->nested.msrs.procbased_ctls_low; in vmx_restore_control_msr()
1270 highp = &vmx->nested.msrs.procbased_ctls_high; in vmx_restore_control_msr()
1273 lowp = &vmx->nested.msrs.exit_ctls_low; in vmx_restore_control_msr()
[all …]
Dvmx.c1836 if (vmx_get_vmx_msr(&vmx->nested.msrs, msr_info->index, in vmx_get_msr()
4210 vmx->nested.msrs.secondary_ctls_high |= control; in vmx_adjust_secondary_exec_control()
4212 vmx->nested.msrs.secondary_ctls_high &= ~control; in vmx_adjust_secondary_exec_control()
6530 struct perf_guest_switch_msr *msrs; in atomic_switch_perf_msrs() local
6533 msrs = perf_guest_get_msrs(&nr_msrs); in atomic_switch_perf_msrs()
6534 if (!msrs) in atomic_switch_perf_msrs()
6538 if (msrs[i].host == msrs[i].guest) in atomic_switch_perf_msrs()
6539 clear_atomic_switch_msr(vmx, msrs[i].msr); in atomic_switch_perf_msrs()
6541 add_atomic_switch_msr(vmx, msrs[i].msr, msrs[i].guest, in atomic_switch_perf_msrs()
6542 msrs[i].host, false); in atomic_switch_perf_msrs()
[all …]
Dvmx.h212 struct nested_vmx_msrs msrs; member
/Linux-v5.15/arch/x86/lib/
Dmsr.c11 struct msr *msrs = NULL; in msrs_alloc() local
13 msrs = alloc_percpu(struct msr); in msrs_alloc()
14 if (!msrs) { in msrs_alloc()
19 return msrs; in msrs_alloc()
23 void msrs_free(struct msr *msrs) in msrs_free() argument
25 free_percpu(msrs); in msrs_free()
Dmsr-smp.c14 if (rv->msrs) in __rdmsr_on_cpu()
15 reg = per_cpu_ptr(rv->msrs, this_cpu); in __rdmsr_on_cpu()
28 if (rv->msrs) in __wrmsr_on_cpu()
29 reg = per_cpu_ptr(rv->msrs, this_cpu); in __wrmsr_on_cpu()
100 struct msr *msrs, in __rwmsr_on_cpus() argument
108 rv.msrs = msrs; in __rwmsr_on_cpus()
127 void rdmsr_on_cpus(const struct cpumask *mask, u32 msr_no, struct msr *msrs) in rdmsr_on_cpus() argument
129 __rwmsr_on_cpus(mask, msr_no, msrs, __rdmsr_on_cpu); in rdmsr_on_cpus()
141 void wrmsr_on_cpus(const struct cpumask *mask, u32 msr_no, struct msr *msrs) in wrmsr_on_cpus() argument
143 __rwmsr_on_cpus(mask, msr_no, msrs, __wrmsr_on_cpu); in wrmsr_on_cpus()
/Linux-v5.15/Documentation/trace/postprocess/
Ddecode_msr.py7 msrs = dict() variable
13 msrs[int(m.group(2), 16)] = m.group(1)
26 if num in msrs:
27 r = msrs[num]
/Linux-v5.15/arch/x86/include/asm/
Dmsr.h27 struct msr *msrs; member
328 void msrs_free(struct msr *msrs);
337 void rdmsr_on_cpus(const struct cpumask *mask, u32 msr_no, struct msr *msrs);
338 void wrmsr_on_cpus(const struct cpumask *mask, u32 msr_no, struct msr *msrs);
367 struct msr *msrs) in rdmsr_on_cpus() argument
369 rdmsr_on_cpu(0, msr_no, &(msrs[0].l), &(msrs[0].h)); in rdmsr_on_cpus()
372 struct msr *msrs) in wrmsr_on_cpus() argument
374 wrmsr_on_cpu(0, msr_no, msrs[0].l, msrs[0].h); in wrmsr_on_cpus()
/Linux-v5.15/tools/testing/selftests/kvm/lib/x86_64/
Dprocessor.c1034 struct kvm_msrs msrs; member
1104 state = malloc(sizeof(*state) + nmsrs * sizeof(state->msrs.entries[0])); in vcpu_save_state()
1142 state->msrs.nmsrs = nmsrs; in vcpu_save_state()
1144 state->msrs.entries[i].index = list->indices[i]; in vcpu_save_state()
1145 r = ioctl(vcpu->fd, KVM_GET_MSRS, &state->msrs); in vcpu_save_state()
1176 r = ioctl(vcpu->fd, KVM_SET_MSRS, &state->msrs); in vcpu_load_state()
1177 … TEST_ASSERT(r == state->msrs.nmsrs, "Unexpected result from KVM_SET_MSRS, r: %i (failed at %x)", in vcpu_load_state()
1178 r, r == state->msrs.nmsrs ? -1 : state->msrs.entries[r].index); in vcpu_load_state()
/Linux-v5.15/Documentation/virt/kvm/
Dcpuid.rst44 KVM_FEATURE_CLOCKSOURCE 0 kvmclock available at msrs
52 KVM_FEATURE_CLOCKSOURCE2 3 kvmclock available at msrs
Dapi.rst214 __u32 nmsrs; /* number of msrs in entries */
219 kvm adjusts nmsrs to reflect the actual number of msrs and fills in the
222 KVM_GET_MSR_INDEX_LIST returns the guest msrs that are supported. The list
624 :Returns: number of msrs successfully returned;
640 __u32 nmsrs; /* number of msrs in entries */
664 :Returns: number of msrs successfully set (see below), -1 on error
3730 __u32 nmsrs; /* number of msrs in bitmap */
4824 __u32 nmsrs; /* number of msrs in bitmap */
/Linux-v5.15/arch/x86/kernel/cpu/mce/
Damd.c620 u32 msrs[NR_BLOCKS]; in disable_err_thresholding() local
623 msrs[0] = 0x00000413; /* MC4_MISC0 */ in disable_err_thresholding()
624 msrs[1] = 0xc0000408; /* MC4_MISC1 */ in disable_err_thresholding()
632 msrs[0] = MSR_AMD64_SMCA_MCx_MISC(bank); in disable_err_thresholding()
647 msr_clear_bit(msrs[i], 62); in disable_err_thresholding()
/Linux-v5.15/drivers/edac/
Damd64_edac.c14 static struct msr __percpu *msrs; variable
3347 rdmsr_on_cpus(mask, MSR_IA32_MCG_CTL, msrs); in nb_mce_bank_enabled_on_node()
3350 struct msr *reg = per_cpu_ptr(msrs, cpu); in nb_mce_bank_enabled_on_node()
3379 rdmsr_on_cpus(cmask, MSR_IA32_MCG_CTL, msrs); in toggle_ecc_err_reporting()
3383 struct msr *reg = per_cpu_ptr(msrs, cpu); in toggle_ecc_err_reporting()
3398 wrmsr_on_cpus(cmask, MSR_IA32_MCG_CTL, msrs); in toggle_ecc_err_reporting()
3953 msrs = msrs_alloc(); in amd64_edac_init()
3954 if (!msrs) in amd64_edac_init()
3992 msrs_free(msrs); in amd64_edac_init()
3993 msrs = NULL; in amd64_edac_init()
[all …]
/Linux-v5.15/arch/x86/kvm/
Dx86.c344 struct kvm_user_return_msrs *msrs in kvm_on_user_return() local
354 if (msrs->registered) { in kvm_on_user_return()
355 msrs->registered = false; in kvm_on_user_return()
360 values = &msrs->values[slot]; in kvm_on_user_return()
410 struct kvm_user_return_msrs *msrs = per_cpu_ptr(user_return_msrs, cpu); in kvm_user_return_msr_cpu_online() local
416 msrs->values[i].host = value; in kvm_user_return_msr_cpu_online()
417 msrs->values[i].curr = value; in kvm_user_return_msr_cpu_online()
424 struct kvm_user_return_msrs *msrs = per_cpu_ptr(user_return_msrs, cpu); in kvm_set_user_return_msr() local
427 value = (value & mask) | (msrs->values[slot].host & ~mask); in kvm_set_user_return_msr()
428 if (value == msrs->values[slot].curr) in kvm_set_user_return_msr()
[all …]