]> git.proxmox.com Git - mirror_qemu.git/commit - configure
tcg: enable MTTCG by default for ARM on x86 hosts
authorAlex Bennée <alex.bennee@linaro.org>
Thu, 23 Feb 2017 18:29:27 +0000 (18:29 +0000)
committerAlex Bennée <alex.bennee@linaro.org>
Fri, 24 Feb 2017 10:32:46 +0000 (10:32 +0000)
commitca759f9e387db87e1719911f019bc60c74be9ed8
tree5d328bd7b1c22749e282991182ddd1644e291fab
parent4881658a4bf6dc5335e5033d0916b2e86687463d
tcg: enable MTTCG by default for ARM on x86 hosts

This enables the multi-threaded system emulation by default for ARMv7
and ARMv8 guests using the x86_64 TCG backend. This is because on the
guest side:

  - The ARM translate.c/translate-64.c have been converted to
    - use MTTCG safe atomic primitives
    - emit the appropriate barrier ops
  - The ARM machine has been updated to
    - hold the BQL when modifying shared cross-vCPU state
    - defer powerctl changes to async safe work

All the host backends support the barrier and atomic primitives but
need to provide same-or-better support for normal load/store
operations.

Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <rth@twiddle.net>
Acked-by: Peter Maydell <peter.maydell@linaro.org>
Tested-by: Pranith Kumar <bobby.prani@gmail.com>
Reviewed-by: Pranith Kumar <bobby.prani@gmail.com>
configure
target/arm/cpu.h
tcg/i386/tcg-target.h