It turns out PV EOI gets disabled after migration - until next guest reset. This is because we are missing code to actually migrate it. This patch fixes it up: it applies cleanly to qemu.git as well as qemu-kvm.git, so I think it's cleaner to apply it in qemu.git to keep diff to minimum. Note: there's talk about adding infrastructure for CPUID whitelisting which thinkably could be used for migration compat support. I am guessing this won't be 1.2 material - when it's ready we can easily replace a simple flag that this patchset adds with something else. So this just adds minimal code to avoid regressing cross-version migration. Note: there's a kernel bug in linux 3.6-rc3 - apply my patch 'kvm: fix KVM_GET_MSR for PV EOI' in order to use this patchset on it. Needed for 1.2. Changes from v2 and v3: Multiple tweaks in variable name to confirm to strict C99 (Blue Swirl) Changes from v1: Update all headers from 3.6-rc3 to keep them in sync (Jan) Disable cpuid flag for qemu 1.2 and older (Orit) Michael S. Tsirkin (4): linux-headers: update to 3.6-rc3 pc: refactor compat code cpuid: disable pv eoi for 1.1 and older compat types kvm: get/set PV EOI MSR hw/Makefile.objs | 2 +- hw/cpu_flags.c | 32 +++++++++++++++++++++++++++ hw/cpu_flags.h | 9 ++++++++ hw/pc_piix.c | 46 ++++++++++++++++++++++++++++++++------- linux-headers/asm-s390/kvm.h | 2 +- linux-headers/asm-s390/kvm_para.h | 2 +- linux-headers/asm-x86/kvm.h | 1 + linux-headers/asm-x86/kvm_para.h | 7 ++++++ linux-headers/linux/kvm.h | 3 +++ target-i386/cpu.c | 8 +++++++ target-i386/cpu.h | 1 + target-i386/kvm.c | 13 +++++++++++ target-i386/machine.c | 21 ++++++++++++++++++ 13 files changed, 136 insertions(+), 11 deletions(-) create mode 100644 hw/cpu_flags.c create mode 100644 hw/cpu_flags.h -- MST -- 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