qemu/include
Sergey Fedorov 3359baad36 tcg: Make tb_flush() thread safe
Use async_safe_run_on_cpu() to make tb_flush() thread safe.  This is
possible now that code generation does not happen in the middle of
execution.

It can happen that multiple threads schedule a safe work to flush the
translation buffer. To keep statistics and debugging output sane, always
check if the translation buffer has already been flushed.

Signed-off-by: Sergey Fedorov <serge.fdrv@gmail.com>
Signed-off-by: Sergey Fedorov <sergey.fedorov@linaro.org>
[AJB: minor re-base fixes]
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <1470158864-17651-13-git-send-email-alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2016-09-27 11:57:30 +02:00
..
block block: Add "read-only" to the options QDict 2016-09-23 13:36:10 +02:00
crypto crypto: use correct derived key size when timing pbkdf 2016-09-19 16:30:45 +01:00
disas disas: Fix ATTRIBUTE_UNUSED define clash with ALSA headers 2016-07-19 16:40:39 +01:00
exec tcg: Make tb_flush() thread safe 2016-09-27 11:57:30 +02:00
fpu fpu: add mechanism to check for invalid long double formats 2016-09-15 12:43:18 +01:00
hw x86: ioapic: boost default version to 0x20 2016-09-27 11:57:28 +02:00
io Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
libdecnumber Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
migration Remove unused function declarations 2016-09-15 15:32:22 +03:00
monitor monitor: fix crash when leaving qemu with spice audio 2016-08-08 14:16:11 +02:00
net Remove unused function declarations 2016-09-15 15:32:22 +03:00
qapi qapi: Support unregistering QMP commands 2016-09-19 17:32:21 +02:00
qemu compiler: Swap 'public domain' header for license 2016-09-27 11:57:29 +02:00
qom tcg: Make tb_flush() thread safe 2016-09-27 11:57:30 +02:00
standard-headers linux-headers: update 2016-09-05 15:15:16 +02:00
sysemu Block layer patches 2016-09-23 16:15:33 +01:00
ui Remove unused function declarations 2016-09-15 15:32:22 +03:00
elf.h Clean up ill-advised or unusual header guards 2016-07-12 16:20:46 +02:00
glib-compat.h glib-compat: add g_(s)list_free_full() 2016-09-08 17:57:32 +04:00
qemu-common.h Update ancient copyright string in -version output 2016-08-11 16:24:53 +01:00
qemu-io.h qemu-io: Use BlockBackend 2015-02-16 15:07:19 +00:00
trace-tcg.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00
trace.h Clean up decorations and whitespace around header guards 2016-07-12 16:20:46 +02:00