]> git.proxmox.com Git - mirror_qemu.git/commit - translate-all.c
log: Add locking to large logging blocks
authorRichard Henderson <rth@twiddle.net>
Thu, 22 Sep 2016 22:17:10 +0000 (15:17 -0700)
committerRichard Henderson <rth@twiddle.net>
Tue, 1 Nov 2016 16:29:03 +0000 (10:29 -0600)
commit1ee73216f4ccd2f3b6eb818feb165b3cf5a1944c
treec4bf6e9433b8c0104e384233fa09a78346673709
parent9acbf7d8cad3d3af498e4e907fb1f5ab27a302e9
log: Add locking to large logging blocks

Reuse the existing locking provided by stdio to keep in_asm, cpu,
op, op_opt, op_ind, and out_asm as contiguous blocks.

While it isn't possible to interleave e.g. in_asm or op_opt logs
because of the TB lock protecting all code generation, it is
possible to interleave cpu logs, or to interleave a cpu dump with
an out_asm dump.

For mingw32, we appear to have no viable solution for this.  The locking
functions are not properly exported from the system runtime library.

Reviewed-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Richard Henderson <rth@twiddle.net>
25 files changed:
cpu-exec.c
exec.c
include/qemu/log.h
include/sysemu/os-posix.h
include/sysemu/os-win32.h
target-alpha/translate.c
target-arm/translate-a64.c
target-arm/translate.c
target-cris/translate.c
target-i386/translate.c
target-lm32/translate.c
target-m68k/translate.c
target-microblaze/translate.c
target-mips/translate.c
target-openrisc/translate.c
target-ppc/translate.c
target-s390x/translate.c
target-sh4/translate.c
target-sparc/translate.c
target-tilegx/translate.c
target-tricore/translate.c
target-unicore32/translate.c
target-xtensa/translate.c
tcg/tcg.c
translate-all.c