From 9fbdd8d8856cd284c803c4154e577b9217ac7a2e Mon Sep 17 00:00:00 2001 From: Liran Alon <liran.alon@oracle.com> Date: Sat, 17 Mar 2018 19:02:19 -0400 Subject: [PATCH] KVM: x86: Add support for save/load MSR_SMI_COUNT This MSR returns the number of #SMIs that occurred on CPU since boot. KVM commit 52797bf9a875 ("KVM: x86: Add emulation of MSR_SMI_COUNT") introduced support for emulating this MSR. This commit adds support for QEMU to save/load this MSR for migration purposes. Backports relevant parts of commit e13713db5b609d9a83c9cfc8ba389d4215d4ba29 from qemu --- qemu/target/i386/cpu.c | 1 + qemu/target/i386/cpu.h | 2 ++ 2 files changed, 3 insertions(+) diff --git a/qemu/target/i386/cpu.c b/qemu/target/i386/cpu.c index 46b552d4..4a62ef8c 100644 --- a/qemu/target/i386/cpu.c +++ b/qemu/target/i386/cpu.c @@ -3627,6 +3627,7 @@ static void x86_cpu_reset(CPUState *s) cpu_x86_update_cr0(env, 0x60000010); env->a20_mask = ~0x0; env->smbase = 0x30000; + env->msr_smi_count = 0; env->idt.limit = 0xffff; env->gdt.limit = 0xffff; diff --git a/qemu/target/i386/cpu.h b/qemu/target/i386/cpu.h index 6d0e5fab..f2321f04 100644 --- a/qemu/target/i386/cpu.h +++ b/qemu/target/i386/cpu.h @@ -338,6 +338,7 @@ #define MSR_P6_PERFCTR0 0xc1 #define MSR_IA32_SMBASE 0x9e +#define MSR_SMI_COUNT 0x34 #define MSR_MTRRcap 0xfe #define MSR_MTRRcap_VCNT 8 #define MSR_MTRRcap_FIXRANGE_SUPPORT (1 << 8) @@ -1079,6 +1080,7 @@ typedef struct CPUX86State { uint64_t pat; uint32_t smbase; + uint64_t msr_smi_count; uint32_t pkru;