kvm: use atomic_read/atomic_set to access cpu->exit_request

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
Paolo Bonzini 2017-02-15 15:36:11 +01:00
parent 18268b6016
commit c5c6679d37

View file

@ -1933,7 +1933,7 @@ int kvm_cpu_exec(CPUState *cpu)
DPRINTF("kvm_cpu_exec()\n"); DPRINTF("kvm_cpu_exec()\n");
if (kvm_arch_process_async_events(cpu)) { if (kvm_arch_process_async_events(cpu)) {
cpu->exit_request = 0; atomic_set(&cpu->exit_request, 0);
return EXCP_HLT; return EXCP_HLT;
} }
@ -1948,7 +1948,7 @@ int kvm_cpu_exec(CPUState *cpu)
} }
kvm_arch_pre_run(cpu, run); kvm_arch_pre_run(cpu, run);
if (cpu->exit_request) { if (atomic_read(&cpu->exit_request)) {
DPRINTF("interrupt exit requested\n"); DPRINTF("interrupt exit requested\n");
/* /*
* KVM requires us to reenter the kernel after IO exits to complete * KVM requires us to reenter the kernel after IO exits to complete
@ -2069,7 +2069,7 @@ int kvm_cpu_exec(CPUState *cpu)
vm_stop(RUN_STATE_INTERNAL_ERROR); vm_stop(RUN_STATE_INTERNAL_ERROR);
} }
cpu->exit_request = 0; atomic_set(&cpu->exit_request, 0);
return ret; return ret;
} }