Merge branch 'mingw' of git://qemu.weilnetz.de/qemu

* 'mingw' of git://qemu.weilnetz.de/qemu:
  qemu-timer: move timeBeginPeriod/timeEndPeriod to os-win32
  Release SMP restriction on Windows
  Ensure good ordering of memory instruction in cpu_exec
  Check effective suspension of TCG thread
This commit is contained in:
Aurelien Jarno
2013-04-13 14:31:54 +02:00
4 changed files with 47 additions and 38 deletions

View File

@ -215,6 +215,14 @@ int cpu_exec(CPUArchState *env)
cpu_single_env = env;
/* As long as cpu_single_env is null, up to the assignment just above,
* requests by other threads to exit the execution loop are expected to
* be issued using the exit_request global. We must make sure that our
* evaluation of the global value is performed past the cpu_single_env
* value transition point, which requires a memory barrier as well as
* an instruction scheduling constraint on modern architectures. */
smp_mb();
if (unlikely(exit_request)) {
cpu->exit_request = 1;
}