On 07/26/2017 05:02 AM, Alex Bennée wrote:
Philippe Mathieu-Daudé <f4...@amsat.org> writes:
Hi Peter,
I think this patch belongs to 2.10, as there is no time to fix TCI +
MTTCG. Should I RESEND it alone with "for 2.10" subject?
One other option might be disable TCI if MTTCG enabled, but there is
no ./configure option for MTTCG while there is for TCI.
Regards,
Phil.
On 06/28/2017 10:02 PM, Philippe Mathieu-Daudé wrote:
TCI + MTTCG cause strange errors...
$ arm-softmmu/qemu-system-arm -machine raspi2 -cpu cortex-a7 -smp 4 -accel
tcg,thread=multi -kernel kernel7.img
qemu-system-arm: Guest expects a stronger memory ordering than the host
provides
This may cause strange/hard to debug errors
Segmentation fault (core dumped)
So this isn't TCI enabling MTTCG by accident - this is the user forcing
it when it wouldn't otherwise be enabled. Hence the scary warning...
Hmmm this is the user enabling TCI, I'm not sure about "forcing it".
Now MTTCG is enforced by the ./configure and there is no option to
disable it.
I posted this patch after realizing there are more TCI users/testers
than just Stefan Weil, Jaroslaw Pelczar and me. Peter commented about
http://qira.me/ which doesn't look very active.
(see this thread:
http://lists.nongnu.org/archive/html/qemu-devel/2017-06/threads.html#06528 )
Thinking about eventual downstream project using the TCI part of QEMU
and trying to stay up-to-date with upstream, this patch might save
headaches.
Since there is no formal yes/no to this patch I'm still wondering if I
should track it or no.
Regards,
Phil.
Signed-off-by: Philippe Mathieu-Daudé <f4...@amsat.org>
---
configure | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/configure b/configure
index c571ad14e5..510f443e06 100755
--- a/configure
+++ b/configure
@@ -6225,7 +6225,11 @@ fi
if test "$target_softmmu" = "yes" ; then
echo "CONFIG_SOFTMMU=y" >> $config_target_mak
if test "$mttcg" = "yes" ; then
- echo "TARGET_SUPPORTS_MTTCG=y" >> $config_target_mak
+ if test "$tcg_interpreter" = "yes" ; then
+ echo "TCI enabled, disabling MTTCG"
+ else
+ echo "TARGET_SUPPORTS_MTTCG=y" >> $config_target_mak
+ fi
fi
fi
if test "$target_user_only" = "yes" ; then
--
Alex Bennée