| /linux-6.15/arch/x86/kvm/vmx/ |
| H A D | nested.h | 125 return vmx_misc_cr3_count(to_vmx(vcpu)->nested.msrs.misc_low); in nested_cpu_vmx_misc_cr3_count() 135 return to_vmx(vcpu)->nested.msrs.misc_low & in nested_cpu_has_vmwrite_any_field() 146 return to_vmx(vcpu)->nested.msrs.procbased_ctls_high & in nested_cpu_supports_monitor_trap_flag() 152 return to_vmx(vcpu)->nested.msrs.secondary_ctls_high & in nested_cpu_has_vmx_shadow_vmcs() 283 u64 fixed0 = to_vmx(vcpu)->nested.msrs.cr0_fixed0; in nested_guest_cr0_valid() 284 u64 fixed1 = to_vmx(vcpu)->nested.msrs.cr0_fixed1; in nested_guest_cr0_valid() 287 if (to_vmx(vcpu)->nested.msrs.secondary_ctls_high & in nested_guest_cr0_valid() 297 u64 fixed0 = to_vmx(vcpu)->nested.msrs.cr0_fixed0; in nested_host_cr0_valid() 298 u64 fixed1 = to_vmx(vcpu)->nested.msrs.cr0_fixed1; in nested_host_cr0_valid() 305 u64 fixed0 = to_vmx(vcpu)->nested.msrs.cr4_fixed0; in nested_cr4_valid() [all …]
|
| H A D | nested.c | 1512 *pdata = msrs->basic; in vmx_get_vmx_msr() 1533 msrs->exit_ctls_low, in vmx_get_vmx_msr() 1534 msrs->exit_ctls_high); in vmx_get_vmx_msr() 1541 msrs->entry_ctls_low, in vmx_get_vmx_msr() 1548 msrs->misc_low, in vmx_get_vmx_msr() 1549 msrs->misc_high); in vmx_get_vmx_msr() 7005 msrs->exit_ctls_low = in nested_vmx_setup_exit_ctls() 7028 msrs->entry_ctls_low = in nested_vmx_setup_entry_ctls() 7114 msrs->ept_caps = in nested_vmx_setup_secondary_ctls() 7168 msrs->misc_low |= in nested_vmx_setup_misc_data() [all …]
|
| H A D | vmx.c | 4594 vmx->nested.msrs.secondary_ctls_high |= control; in vmx_adjust_secondary_exec_control() 4874 memcpy(&vmx->nested.msrs, &vmcs_config.nested, sizeof(vmx->nested.msrs)); in __vmx_vcpu_reset() 7247 struct perf_guest_switch_msr *msrs; in atomic_switch_perf_msrs() local 7256 if (!msrs) in atomic_switch_perf_msrs() 7260 if (msrs[i].host == msrs[i].guest) in atomic_switch_perf_msrs() 7261 clear_atomic_switch_msr(vmx, msrs[i].msr); in atomic_switch_perf_msrs() 7263 add_atomic_switch_msr(vmx, msrs[i].msr, msrs[i].guest, in atomic_switch_perf_msrs() 7264 msrs[i].host, false); in atomic_switch_perf_msrs() 7772 vmx->nested.msrs.cr0_fixed1 = 0xffffffff; in nested_vmx_cr_fixed1_bits_update() 7773 vmx->nested.msrs.cr4_fixed1 = X86_CR4_PCE; in nested_vmx_cr_fixed1_bits_update() [all …]
|
| H A D | vmx.h | 232 struct nested_vmx_msrs msrs; member
|
| /linux-6.15/arch/x86/lib/ |
| H A D | msr.c | 11 struct msr __percpu *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 __percpu *msrs) in msrs_free() argument 25 free_percpu(msrs); in msrs_free()
|
| H A D | msr-smp.c | 13 if (rv->msrs) in __rdmsr_on_cpu() 14 reg = this_cpu_ptr(rv->msrs); in __rdmsr_on_cpu() 26 if (rv->msrs) in __wrmsr_on_cpu() 27 reg = this_cpu_ptr(rv->msrs); in __wrmsr_on_cpu() 98 struct msr __percpu *msrs, in __rwmsr_on_cpus() argument 106 rv.msrs = msrs; in __rwmsr_on_cpus() 125 void rdmsr_on_cpus(const struct cpumask *mask, u32 msr_no, struct msr __percpu *msrs) in rdmsr_on_cpus() argument 127 __rwmsr_on_cpus(mask, msr_no, msrs, __rdmsr_on_cpu); in rdmsr_on_cpus() 139 void wrmsr_on_cpus(const struct cpumask *mask, u32 msr_no, struct msr __percpu *msrs) in wrmsr_on_cpus() argument 141 __rwmsr_on_cpus(mask, msr_no, msrs, __wrmsr_on_cpu); in wrmsr_on_cpus()
|
| /linux-6.15/drivers/platform/x86/intel/ifs/ |
| H A D | load.c | 121 const struct ifs_test_msrs *msrs; in copy_hashes_authenticate_chunks() local 128 msrs = ifs_get_test_msrs(dev); in copy_hashes_authenticate_chunks() 130 wrmsrl(msrs->copy_hashes, ifs_hash_ptr); in copy_hashes_authenticate_chunks() 131 rdmsrl(msrs->copy_hashes_status, hashes_status.data); in copy_hashes_authenticate_chunks() 152 wrmsrl(msrs->copy_chunks, linear_addr); in copy_hashes_authenticate_chunks() 153 rdmsrl(msrs->copy_chunks_status, chunk_status.data); in copy_hashes_authenticate_chunks() 185 const struct ifs_test_msrs *msrs; in copy_hashes_authenticate_chunks_gen2() local 195 msrs = ifs_get_test_msrs(dev); in copy_hashes_authenticate_chunks_gen2() 198 wrmsrl(msrs->copy_hashes, ifs_hash_ptr); in copy_hashes_authenticate_chunks_gen2() 219 wrmsrl(msrs->test_ctrl, INVALIDATE_STRIDE); in copy_hashes_authenticate_chunks_gen2() [all …]
|
| /linux-6.15/Documentation/trace/postprocess/ |
| H A D | decode_msr.py | 7 msrs = dict() variable 13 msrs[int(m.group(2), 16)] = m.group(1) 26 if num in msrs: 27 r = msrs[num]
|
| /linux-6.15/arch/x86/include/asm/ |
| H A D | msr.h | 20 struct msr __percpu *msrs; member 326 void msrs_free(struct msr __percpu *msrs); 335 void rdmsr_on_cpus(const struct cpumask *mask, u32 msr_no, struct msr __percpu *msrs); 336 void wrmsr_on_cpus(const struct cpumask *mask, u32 msr_no, struct msr __percpu *msrs); 365 struct msr __percpu *msrs) in rdmsr_on_cpus() argument 367 rdmsr_on_cpu(0, msr_no, raw_cpu_ptr(&msrs->l), raw_cpu_ptr(&msrs->h)); in rdmsr_on_cpus() 370 struct msr __percpu *msrs) in wrmsr_on_cpus() argument 372 wrmsr_on_cpu(0, msr_no, raw_cpu_read(msrs->l), raw_cpu_read(msrs->h)); in wrmsr_on_cpus()
|
| /linux-6.15/Documentation/devicetree/bindings/arm/ |
| H A D | qcom,coresight-tpdm.yaml | 61 qcom,dsb-msrs-num: 70 qcom,cmb-msrs-num: 113 qcom,dsb-msrs-num = <16>; 133 qcom,cmb-msrs-num = <32>;
|
| /linux-6.15/tools/testing/selftests/kvm/include/x86/ |
| H A D | processor.h | 426 struct kvm_msrs msrs; member 874 struct kvm_msrs *msrs) in vcpu_msrs_get() argument 876 int r = __vcpu_ioctl(vcpu, KVM_GET_MSRS, msrs); in vcpu_msrs_get() 878 TEST_ASSERT(r == msrs->nmsrs, in vcpu_msrs_get() 880 r, r < 0 || r >= msrs->nmsrs ? -1 : msrs->entries[r].index); in vcpu_msrs_get() 882 static inline void vcpu_msrs_set(struct kvm_vcpu *vcpu, struct kvm_msrs *msrs) in vcpu_msrs_set() argument 884 int r = __vcpu_ioctl(vcpu, KVM_SET_MSRS, msrs); in vcpu_msrs_set() 886 TEST_ASSERT(r == msrs->nmsrs, in vcpu_msrs_set() 888 r, r < 0 || r >= msrs->nmsrs ? -1 : msrs->entries[r].index); in vcpu_msrs_set()
|
| /linux-6.15/arch/arm64/boot/dts/qcom/ |
| H A D | qcs8300.dtsi | 970 qcom,cmb-msrs-num = <32>; 1116 qcom,cmb-msrs-num = <32>; 1135 qcom,cmb-msrs-num = <32>; 1137 qcom,dsb-msrs-num = <32>; 1156 qcom,dsb-msrs-num = <32>; 1249 qcom,dsb-msrs-num = <32>; 1292 qcom,dsb-msrs-num = <32>; 1364 qcom,dsb-msrs-num = <32>; 1616 qcom,cmb-msrs-num = <32>; 1635 qcom,cmb-msrs-num = <32>; [all …]
|
| H A D | qcs615.dtsi | 1905 qcom,cmb-msrs-num = <32>; 1925 qcom,cmb-msrs-num = <32>; 1944 qcom,cmb-msrs-num = <32>; 1946 qcom,dsb-msrs-num = <32>; 1965 qcom,dsb-msrs-num = <32>; 2016 qcom,cmb-msrs-num = <32>; 2036 qcom,cmb-msrs-num = <32>; 2038 qcom,dsb-msrs-num = <32>; 2058 qcom,dsb-msrs-num = <32>; 2101 qcom,dsb-msrs-num = <32>; [all …]
|
| H A D | x1e80100.dtsi | 6414 qcom,cmb-msrs-num = <32>; 6471 qcom,cmb-msrs-num = <32>; 6609 qcom,cmb-msrs-num = <32>; 6628 qcom,dsb-msrs-num = <32>; 6647 qcom,cmb-msrs-num = <32>; 6666 qcom,dsb-msrs-num = <32>; 6717 qcom,dsb-msrs-num = <32>; 6737 qcom,dsb-msrs-num = <32>; 6757 qcom,cmb-msrs-num = <32>; 6991 qcom,cmb-msrs-num = <32>; [all …]
|
| H A D | sa8775p.dtsi | 2459 qcom,cmb-msrs-num = <32>; 2518 qcom,cmb-msrs-num = <32>; 2800 qcom,cmb-msrs-num = <32>; 2820 qcom,cmb-msrs-num = <32>; 2840 qcom,cmb-msrs-num = <32>; 2860 qcom,cmb-msrs-num = <32>; 2880 qcom,dsb-msrs-num = <32>; 3192 qcom,cmb-msrs-num = <32>; 3212 qcom,dsb-msrs-num = <32>; 3294 qcom,cmb-msrs-num = <32>; [all …]
|
| /linux-6.15/Documentation/virt/kvm/x86/ |
| H A D | cpuid.rst | 44 KVM_FEATURE_CLOCKSOURCE 0 kvmclock available at msrs 52 KVM_FEATURE_CLOCKSOURCE2 3 kvmclock available at msrs
|
| /linux-6.15/arch/x86/kernel/cpu/mce/ |
| H A D | amd.c | 647 u32 msrs[NR_BLOCKS]; in disable_err_thresholding() local 650 msrs[0] = 0x00000413; /* MC4_MISC0 */ in disable_err_thresholding() 651 msrs[1] = 0xc0000408; /* MC4_MISC1 */ in disable_err_thresholding() 659 msrs[0] = MSR_AMD64_SMCA_MCx_MISC(bank); in disable_err_thresholding() 674 msr_clear_bit(msrs[i], 62); in disable_err_thresholding()
|
| /linux-6.15/drivers/edac/ |
| H A D | amd64_edac.c | 17 static struct msr __percpu *msrs; variable 3204 rdmsr_on_cpus(mask, MSR_IA32_MCG_CTL, msrs); in nb_mce_bank_enabled_on_node() 3207 struct msr *reg = per_cpu_ptr(msrs, cpu); in nb_mce_bank_enabled_on_node() 3235 rdmsr_on_cpus(cmask, MSR_IA32_MCG_CTL, msrs); in toggle_ecc_err_reporting() 3239 struct msr *reg = per_cpu_ptr(msrs, cpu); in toggle_ecc_err_reporting() 4148 msrs = msrs_alloc(); in amd64_edac_init() 4149 if (!msrs) in amd64_edac_init() 4185 msrs_free(msrs); in amd64_edac_init() 4186 msrs = NULL; in amd64_edac_init() 4216 msrs_free(msrs); in amd64_edac_exit() [all …]
|
| /linux-6.15/tools/testing/selftests/kvm/lib/x86/ |
| H A D | processor.c | 1088 state = malloc(sizeof(*state) + msr_list->nmsrs * sizeof(state->msrs.entries[0])); in vcpu_save_state() 1112 state->msrs.nmsrs = msr_list->nmsrs; in vcpu_save_state() 1114 state->msrs.entries[i].index = msr_list->indices[i]; in vcpu_save_state() 1115 vcpu_msrs_get(vcpu, &state->msrs); in vcpu_save_state() 1125 vcpu_msrs_set(vcpu, &state->msrs); in vcpu_load_state()
|
| /linux-6.15/arch/x86/kvm/ |
| H A D | x86.c | 573 if (msrs->registered) { in kvm_on_user_return() 574 msrs->registered = false; in kvm_on_user_return() 579 values = &msrs->values[slot]; in kvm_on_user_return() 634 msrs->values[i].host = value; in kvm_user_return_msr_cpu_online() 635 msrs->values[i].curr = value; in kvm_user_return_msr_cpu_online() 651 msrs->values[slot].curr = value; in kvm_set_user_return_msr() 652 if (!msrs->registered) { in kvm_set_user_return_msr() 655 msrs->registered = true; in kvm_set_user_return_msr() 665 if (msrs->registered) in drop_user_return_notifiers() 4523 struct kvm_msrs msrs; in msr_io() local [all …]
|
| /linux-6.15/Documentation/virt/kvm/ |
| H A D | api.rst | 238 __u32 nmsrs; /* number of msrs in entries */ 243 kvm adjusts nmsrs to reflect the actual number of msrs and fills in the 246 KVM_GET_MSR_INDEX_LIST returns the guest msrs that are supported. The list 650 :Returns: number of msrs successfully returned; 666 __u32 nmsrs; /* number of msrs in entries */ 690 :Returns: number of msrs successfully set (see below), -1 on error 4176 __u32 nmsrs; /* number of msrs in bitmap */
|