This series has three major topics: - add required kernel reentry after IO exits - provide MCE forwarding under !CONFIG_IOTHREAD - prepare kvm_cpu_exec for qemu-kvm reuse Along these lines, several cleanups and simplifcations are applied to cpus.c and the KVM VCPU execution bits. The first patch should of course be dropped if uq/master is applied without "kvm: Drop return value of kvm_cpu_exec". Note that I did not yet to test the MCE support. Is there an easy way to trigger valid MCE events at kernel level? Or do I need to fake SIGBUS at qemu level? Jan Kiszka (18): Revert "kvm: Drop return value of kvm_cpu_exec" kvm: Drop redundant kvm_enabled from kvm_cpu_thread_fn kvm: Provide sigbus services arch-independently Refactor signal setup functions in cpus.c kvm: Set up signal mask also for !CONFIG_IOTHREAD kvm: Refactor qemu_kvm_eat_signals kvm: Add MCE signal support for !CONFIG_IOTHREAD kvm: Handle kvm_init_vcpu errors Refactor kvm&tcg function names in cpus.c Fix a few coding style violations in cpus.c Introduce VCPU self-signaling service kvm: Move irqchip event processing out of inner loop kvm: Unconditionally reenter kernel after IO exits kvm: Remove static return code of kvm_handle_io kvm: Leave kvm_cpu_exec directly after KVM_EXIT_SHUTDOWN kvm: Separate TCG from KVM cpu execution kvm: x86: Prepare VCPU loop for in-kernel irqchip kvm: Drop return values from kvm_arch_pre/post_run cpu-exec.c | 19 +-- cpus.c | 521 +++++++++++++++++++++++++++++++--------------------- kvm-all.c | 76 +++++---- kvm-stub.c | 9 +- kvm.h | 14 +- qemu-common.h | 1 + target-i386/kvm.c | 90 +++++----- target-ppc/kvm.c | 16 ++- target-s390x/kvm.c | 16 ++- 9 files changed, 444 insertions(+), 318 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