It turns out that not only do we not follow the SDM guidelines for reseting MTRR state on vCPU reset, but we really don't even attempt to keep KVM MTRR state synchronized with QEMU, which affects not only reset, but migration. This series implements the get/put MSR support for KVM, then goes on to properly re-initialize the state on vCPU reset. This resolves the problem described in the last patch as well as some potential mismatches around migration. The migration state is unchanged, other than actually passing valid data. Thanks to Laszlo for his help debugging this and realization of how terribly broken MTRR synchronization is. Thanks, Alex --- Alex Williamson (3): x86: Clear MTRRs on vCPU reset x86: kvm: Add MTRR support for kvm_get|put_msrs() x86: Use common variable range MTRR counts target-i386/cpu.c | 10 +++++ target-i386/cpu.h | 4 +- target-i386/kvm.c | 101 ++++++++++++++++++++++++++++++++++++++++++++++++- target-i386/machine.c | 2 - 4 files changed, 113 insertions(+), 4 deletions(-) -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html