This series catches "all the rest" to prepare QEMU's KVM support for merging with qemu-kvm. IOW, once these bits here are applied, qemu-kvm can switch its infrastructure to upstream and is effectively only adding own bits for in-kernel irqchip and device assignment support. Topics of this series are: - support for optimized interrupt handling by hooking cpu_interrupt - another preparational step for in-kernel irqchip support - x86: Do not leave halt if interrupts are disabled - mark VCPU state dirty on creation (fixed deadlock on early hw_error) - complete KVM support for PAT MSR, some related improvements for TCG - further consolidation of inner kvm_cpu_exec loop - expose VCPU host thread ID via "info cpus" and "query-cpus" Please review. CC: Alexander Graf <agraf@xxxxxxx> CC: Riku Voipio <riku.voipio@xxxxxx> Jan Kiszka (15): Break up user and system cpu_interrupt implementations Redirect cpu_interrupt to callback handler kvm: Install optimized interrupt handlers kvm: Add in-kernel irqchip awareness to cpu_thread_is_idle kvm: x86: Do not leave halt if interrupts are disabled kvm: Mark VCPU state dirty on creation x86: Properly reset PAT MSR x86: Save/restore PAT MSR kvm: x86: Synchronize PAT MSR with the kernel kvm: Consider EXIT_DEBUG unknown without CAP_SET_GUEST_DEBUG kvm: Rework inner loop of kvm_cpu_exec kvm: Align kvm_arch_handle_exit to kvm_cpu_exec changes kvm: x86: Reorder functions in kvm.c kvm: x86: Push kvm_arch_debug to kvm_arch_handle_exit Expose thread_id in info cpus cpu-all.h | 14 ++++- cpu-defs.h | 1 + cpus.c | 5 +- exec.c | 21 +++++-- kvm-all.c | 46 ++++++++------- kvm.h | 2 - monitor.c | 4 + os-posix.c | 10 +++ os-win32.c | 5 ++ osdep.h | 1 + qmp-commands.hx | 3 + target-i386/cpu.h | 4 +- target-i386/cpuid.c | 1 - target-i386/helper.c | 5 ++ target-i386/kvm.c | 146 +++++++++++++++++++++++++++---------------------- target-i386/machine.c | 2 + target-ppc/kvm.c | 8 +- target-s390x/kvm.c | 5 ++ 18 files changed, 180 insertions(+), 103 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