Richard Henderson <r...@twiddle.net> writes: > On 02/13/2017 11:10 PM, Alex Bennée wrote: >> @@ -239,9 +240,16 @@ static void cpu_exec_step(CPUState *cpu) <snip> >> + } else if (r == EXCP_ATOMIC) { >> + qemu_mutex_unlock_iothread(); >> + cpu_exec_step_atomic(cpu); >> + qemu_mutex_lock_iothread(); > ... >> + case EXCP_ATOMIC: >> + qemu_mutex_unlock_iothread(); >> + cpu_exec_step_atomic(cpu); >> + qemu_mutex_lock_iothread(); > > > I just noticed this, but if you have to do a v13, it might be best to > move these locks inside cpu_exec_step_atomic, as with tcg_cpu_exec. > Otherwise leave it for later.
Will that work given cpu_exec_step_atomic() is common between linux-user and system emulation? -- Alex Bennée