v2 doesn't use kvm_arch_vcpu_should_kick() and hence avoids the big bug discovered by James. Instead, the last just exposes the synchronization behavior and prepares it for future merging with kvm_arch_vcpu_should_kick(). v2 also constains two patches from Andrew that applied without any changes and a simple optimization for wakeups. v1: http://www.spinics.net/lists/kvm/msg147898.html Andrew Jones (2): KVM: add explicit barrier to kvm_vcpu_kick KVM: improve arch vcpu request defining Radim Krčmář (7): KVM: add kvm_{test,clear}_request to replace {test,clear}_bit KVM: x86: always use kvm_make_request instead of set_bit KVM: remove #ifndef CONFIG_S390 around kvm_vcpu_wake_up KVM: mark requests that do not need a wakeup KVM: perform a wake_up in kvm_make_all_cpus_request KVM: return if kvm_vcpu_wake_up() did wake up the VCPU KVM: mark requests that need synchronization arch/arm/include/asm/kvm_host.h | 2 +- arch/arm64/include/asm/kvm_host.h | 2 +- arch/mips/kvm/emulate.c | 2 +- arch/powerpc/include/asm/kvm_host.h | 4 ++-- arch/powerpc/kvm/book3s_pr.c | 2 +- arch/powerpc/kvm/book3s_pr_papr.c | 2 +- arch/powerpc/kvm/booke.c | 4 ++-- arch/powerpc/kvm/powerpc.c | 2 +- arch/s390/include/asm/kvm_host.h | 6 ++--- arch/s390/kvm/kvm-s390.c | 2 +- arch/x86/include/asm/kvm_host.h | 44 ++++++++++++++++++------------------- arch/x86/kvm/vmx.c | 2 +- arch/x86/kvm/x86.c | 20 ++++++----------- include/linux/kvm_host.h | 42 ++++++++++++++++++++++++++++++----- virt/kvm/kvm_main.c | 30 +++++++++++++++++-------- 15 files changed, 101 insertions(+), 65 deletions(-) -- 2.12.2