[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 1/6] target-i386: introduce kvm_put_one_msr
From: |
Paolo Bonzini |
Subject: |
[Qemu-devel] [PULL 1/6] target-i386: introduce kvm_put_one_msr |
Date: |
Thu, 22 Sep 2016 18:52:13 +0200 |
Avoid further code duplication in the next patch.
Signed-off-by: Paolo Bonzini <address@hidden>
---
target-i386/kvm.c | 20 +++++++++++---------
1 file changed, 11 insertions(+), 9 deletions(-)
diff --git a/target-i386/kvm.c b/target-i386/kvm.c
index f1ad805..c57b01b 100644
--- a/target-i386/kvm.c
+++ b/target-i386/kvm.c
@@ -1532,6 +1532,14 @@ static void kvm_msr_entry_add(X86CPU *cpu, uint32_t
index, uint64_t value)
msrs->nmsrs++;
}
+static int kvm_put_one_msr(X86CPU *cpu, int index, uint64_t value)
+{
+ kvm_msr_buf_reset(cpu);
+ kvm_msr_entry_add(cpu, index, value);
+
+ return kvm_vcpu_ioctl(CPU(cpu), KVM_SET_MSRS, cpu->kvm_msr_buf);
+}
+
static int kvm_put_tscdeadline_msr(X86CPU *cpu)
{
CPUX86State *env = &cpu->env;
@@ -1541,10 +1549,7 @@ static int kvm_put_tscdeadline_msr(X86CPU *cpu)
return 0;
}
- kvm_msr_buf_reset(cpu);
- kvm_msr_entry_add(cpu, MSR_IA32_TSCDEADLINE, env->tsc_deadline);
-
- ret = kvm_vcpu_ioctl(CPU(cpu), KVM_SET_MSRS, cpu->kvm_msr_buf);
+ ret = kvm_put_one_msr(cpu, MSR_IA32_TSCDEADLINE, env->tsc_deadline);
if (ret < 0) {
return ret;
}
@@ -1567,11 +1572,8 @@ static int kvm_put_msr_feature_control(X86CPU *cpu)
return 0;
}
- kvm_msr_buf_reset(cpu);
- kvm_msr_entry_add(cpu, MSR_IA32_FEATURE_CONTROL,
- cpu->env.msr_ia32_feature_control);
-
- ret = kvm_vcpu_ioctl(CPU(cpu), KVM_SET_MSRS, cpu->kvm_msr_buf);
+ ret = kvm_put_one_msr(cpu, MSR_IA32_FEATURE_CONTROL,
+ cpu->env.msr_ia32_feature_control);
if (ret < 0) {
return ret;
}
--
2.7.4
- [Qemu-devel] [PULL 0/6] Misc patches for 2016-09-22, Paolo Bonzini, 2016/09/22
- [Qemu-devel] [PULL 1/6] target-i386: introduce kvm_put_one_msr,
Paolo Bonzini <=
- [Qemu-devel] [PULL 2/6] kvm: apic: set APIC base as part of kvm_apic_put, Paolo Bonzini, 2016/09/22
- [Qemu-devel] [PULL 3/6] iscsi: Fix divide-by-zero regression on raw SG devices, Paolo Bonzini, 2016/09/22
- [Qemu-devel] [PULL 4/6] msmouse: Fix segfault caused by free the chr before chardev cleanup., Paolo Bonzini, 2016/09/22
- [Qemu-devel] [PULL 5/6] scripts: Add a script to check for bug URLs in the git log, Paolo Bonzini, 2016/09/22
- [Qemu-devel] [PULL 6/6] kvm: fix events.flags (KVM_VCPUEVENT_VALID_SMM) overwritten by 0, Paolo Bonzini, 2016/09/22
- Re: [Qemu-devel] [PULL 0/6] Misc patches for 2016-09-22, Eric Blake, 2016/09/22