Lines Matching defs:msr_info

410 int kvm_set_apic_base(struct kvm_vcpu *vcpu, struct msr_data *msr_info)
413 enum lapic_mode new_mode = kvm_apic_mode(msr_info->data);
417 if ((msr_info->data & reserved_bits) != 0 || new_mode == LAPIC_MODE_INVALID)
419 if (!msr_info->host_initiated) {
426 kvm_lapic_set_base(vcpu, msr_info->data);
1523 static int set_efer(struct kvm_vcpu *vcpu, struct msr_data *msr_info)
1526 u64 efer = msr_info->data;
1532 if (!msr_info->host_initiated) {
2873 static int set_msr_mce(struct kvm_vcpu *vcpu, struct msr_data *msr_info)
2877 u32 msr = msr_info->index;
2878 u64 data = msr_info->data;
2886 (data || !msr_info->host_initiated))
2912 if (!msr_info->host_initiated &&
3125 int kvm_set_msr_common(struct kvm_vcpu *vcpu, struct msr_data *msr_info)
3128 u32 msr = msr_info->index;
3129 u64 data = msr_info->data;
3143 if (msr_info->host_initiated)
3147 if (!msr_info->host_initiated)
3154 if (!msr_info->host_initiated)
3166 return set_efer(vcpu, msr_info);
3203 return kvm_set_apic_base(vcpu, msr_info);
3211 if (!msr_info->host_initiated) {
3234 if (!msr_info->host_initiated)
3242 if (msr_info->host_initiated) {
3251 if (!msr_info->host_initiated &&
3265 if (!msr_info->host_initiated)
3285 kvm_write_system_time(vcpu, data, false, msr_info->host_initiated);
3291 kvm_write_system_time(vcpu, data, true, msr_info->host_initiated);
3355 return set_msr_mce(vcpu, msr_info);
3364 return kvm_pmu_set_msr(vcpu, msr_info);
3390 msr_info->host_initiated);
3410 if (!msr_info->host_initiated ||
3427 return kvm_pmu_set_msr(vcpu, msr_info);
3472 int kvm_get_msr_common(struct kvm_vcpu *vcpu, struct msr_data *msr_info)
3474 switch (msr_info->index) {
3505 msr_info->data = 0;
3512 if (kvm_pmu_is_valid_msr(vcpu, msr_info->index))
3513 return kvm_pmu_get_msr(vcpu, msr_info);
3514 msr_info->data = 0;
3517 msr_info->data = vcpu->arch.microcode_version;
3520 if (!msr_info->host_initiated &&
3523 msr_info->data = vcpu->arch.arch_capabilities;
3526 if (!msr_info->host_initiated &&
3529 msr_info->data = vcpu->arch.perf_capabilities;
3532 msr_info->data = vcpu->arch.msr_ia32_power_ctl;
3544 u64 tsc_offset = msr_info->host_initiated ? vcpu->arch.l1_tsc_offset :
3547 msr_info->data = kvm_scale_tsc(vcpu, rdtsc()) + tsc_offset;
3552 return kvm_mtrr_get_msr(vcpu, msr_info->index, &msr_info->data);
3554 msr_info->data = 3;
3568 msr_info->data = 1 << 24;
3571 msr_info->data = kvm_get_apic_base(vcpu);
3574 return kvm_x2apic_msr_read(vcpu, msr_info->index, &msr_info->data);
3576 msr_info->data = kvm_get_lapic_tscdeadline_msr(vcpu);
3579 msr_info->data = (u64)vcpu->arch.ia32_tsc_adjust_msr;
3582 msr_info->data = vcpu->arch.ia32_misc_enable_msr;
3585 if (!msr_info->host_initiated)
3587 msr_info->data = vcpu->arch.smbase;
3590 msr_info->data = vcpu->arch.smi_count;
3594 msr_info->data = 1000ULL;
3596 msr_info->data |= (((uint64_t)4ULL) << 40);
3599 msr_info->data = vcpu->arch.efer;
3605 msr_info->data = vcpu->kvm->arch.wall_clock;
3611 msr_info->data = vcpu->kvm->arch.wall_clock;
3617 msr_info->data = vcpu->arch.time;
3623 msr_info->data = vcpu->arch.time;
3629 msr_info->data = vcpu->arch.apf.msr_en_val;
3635 msr_info->data = vcpu->arch.apf.msr_int_val;
3641 msr_info->data = 0;
3647 msr_info->data = vcpu->arch.st.msr_val;
3653 msr_info->data = vcpu->arch.pv_eoi.msr_val;
3659 msr_info->data = vcpu->arch.msr_kvm_poll_control;
3667 return get_msr_mce(vcpu, msr_info->index, &msr_info->data,
3668 msr_info->host_initiated);
3670 if (!msr_info->host_initiated &&
3673 msr_info->data = vcpu->arch.ia32_xss;
3685 msr_info->data = 0x20000000;
3697 msr_info->index, &msr_info->data,
3698 msr_info->host_initiated);
3710 msr_info->data = 0xbe702111;
3715 msr_info->data = vcpu->arch.osvw.length;
3720 msr_info->data = vcpu->arch.osvw.status;
3723 if (!msr_info->host_initiated &&
3726 msr_info->data = vcpu->arch.msr_platform_info;
3729 msr_info->data = vcpu->arch.msr_misc_features_enables;
3732 msr_info->data = vcpu->arch.msr_hwcr;
3735 if (kvm_pmu_is_valid_msr(vcpu, msr_info->index))
3736 return kvm_pmu_get_msr(vcpu, msr_info);