diff --git a/kernel/kvm_main.c b/kernel/kvm_main.c index 0b2894a..61d931e 100644 --- a/kernel/kvm_main.c +++ b/kernel/kvm_main.c @@ -235,11 +235,7 @@ void kvm_flush_remote_tlbs(struct kvm *kvm) * to complete. */ for (cpu = first_cpu(cpus); cpu != NR_CPUS; cpu = next_cpu(cpu, cpus)) - smp_call_function_single(cpu, ack_flush, &completed, 1, 0); - while (atomic_read(&completed) != needed) { - cpu_relax(); - barrier(); - } + smp_call_function_single(cpu, ack_flush, &completed, 1, 1); } int kvm_vcpu_init(struct kvm_vcpu *vcpu, struct kvm *kvm, unsigned id)