* [RFC PATCH for 5.0] configure: disable MTTCG for MIPS guests
@ 2020-03-20 11:45 Alex Bennée
2020-03-20 13:59 ` Philippe Mathieu-Daudé
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Alex Bennée @ 2020-03-20 11:45 UTC (permalink / raw)
To: qemu-devel
Cc: Aleksandar Markovic, Alex Bennée, Aleksandar Rikalo,
Aurelien Jarno, Philippe Mathieu-Daudé
While debugging check-acceptance failures I found an instability in
the mips64el test case. Briefly the test case:
retry.py -n 100 -c -- ./mips64el-softmmu/qemu-system-mips64el \
-display none -vga none -serial mon:stdio \
-machine malta -kernel ./vmlinux-4.7.0-rc1.I6400 \
-cpu I6400 -smp 8 -vga std \
-append "printk.time=0 clocksource=GIC console=tty0 console=ttyS0 panic=-1" \
--no-reboot
Reports about a 9% failure rate:
Results summary:
0: 91 times (91.00%), avg time 5.547 (0.45 varience/0.67 deviation)
-6: 9 times (9.00%), avg time 3.394 (0.02 varience/0.13 deviation)
Ran command 100 times, 91 passes
When re-run with "--accel tcg,thread=single" the instability goes
away.
Results summary:
0: 100 times (100.00%), avg time 17.318 (249.76 varience/15.80 deviation)
Ran command 100 times, 100 passes
Which seems to indicate there is some aspect of the MIPS MTTCG fixes
that has been missed. Ideally we would fix that but I'm afraid I don't
have time to investigate and am not super familiar with the
architecture anyway.
I've disabled all the mips guests as I assume it's a fundamental
synchronisation primitive that is broken but I haven't tested them all
(there are a lot!).
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Cc: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
Cc: Aurelien Jarno <aurelien@aurel32.net>
Cc: Aleksandar Rikalo <aleksandar.rikalo@rt-rk.com>
Cc: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
configure | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/configure b/configure
index 206d22c5153..002792d21dc 100755
--- a/configure
+++ b/configure
@@ -7832,19 +7832,19 @@ case "$target_name" in
echo "TARGET_ABI32=y" >> $config_target_mak
;;
mips|mipsel)
- mttcg="yes"
+ mttcg="no"
TARGET_ARCH=mips
echo "TARGET_ABI_MIPSO32=y" >> $config_target_mak
;;
mipsn32|mipsn32el)
- mttcg="yes"
+ mttcg="no"
TARGET_ARCH=mips64
TARGET_BASE_ARCH=mips
echo "TARGET_ABI_MIPSN32=y" >> $config_target_mak
echo "TARGET_ABI32=y" >> $config_target_mak
;;
mips64|mips64el)
- mttcg="yes"
+ mttcg="no"
TARGET_ARCH=mips64
TARGET_BASE_ARCH=mips
echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak
--
2.20.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [RFC PATCH for 5.0] configure: disable MTTCG for MIPS guests
2020-03-20 11:45 [RFC PATCH for 5.0] configure: disable MTTCG for MIPS guests Alex Bennée
@ 2020-03-20 13:59 ` Philippe Mathieu-Daudé
2020-03-20 15:53 ` Aleksandar Markovic
2020-03-20 17:08 ` Aleksandar Markovic
2 siblings, 0 replies; 6+ messages in thread
From: Philippe Mathieu-Daudé @ 2020-03-20 13:59 UTC (permalink / raw)
To: Alex Bennée
Cc: Aleksandar Markovic, Aleksandar Rikalo,
qemu-devel@nongnu.org Developers, Aurelien Jarno
On Fri, Mar 20, 2020 at 12:45 PM Alex Bennée <alex.bennee@linaro.org> wrote:
>
> While debugging check-acceptance failures I found an instability in
> the mips64el test case. Briefly the test case:
>
> retry.py -n 100 -c -- ./mips64el-softmmu/qemu-system-mips64el \
> -display none -vga none -serial mon:stdio \
> -machine malta -kernel ./vmlinux-4.7.0-rc1.I6400 \
> -cpu I6400 -smp 8 -vga std \
> -append "printk.time=0 clocksource=GIC console=tty0 console=ttyS0 panic=-1" \
> --no-reboot
>
> Reports about a 9% failure rate:
>
> Results summary:
> 0: 91 times (91.00%), avg time 5.547 (0.45 varience/0.67 deviation)
> -6: 9 times (9.00%), avg time 3.394 (0.02 varience/0.13 deviation)
> Ran command 100 times, 91 passes
>
> When re-run with "--accel tcg,thread=single" the instability goes
> away.
I confirm, in my notes I use this option with -smp with the following cpus:
- mips64dspr2
- I6400
>
> Results summary:
> 0: 100 times (100.00%), avg time 17.318 (249.76 varience/15.80 deviation)
> Ran command 100 times, 100 passes
>
> Which seems to indicate there is some aspect of the MIPS MTTCG fixes
> that has been missed. Ideally we would fix that but I'm afraid I don't
> have time to investigate and am not super familiar with the
> architecture anyway.
>
> I've disabled all the mips guests as I assume it's a fundamental
> synchronisation primitive that is broken but I haven't tested them all
> (there are a lot!).
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Cc: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
> Cc: Aurelien Jarno <aurelien@aurel32.net>
> Cc: Aleksandar Rikalo <aleksandar.rikalo@rt-rk.com>
> Cc: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> configure | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/configure b/configure
> index 206d22c5153..002792d21dc 100755
> --- a/configure
> +++ b/configure
> @@ -7832,19 +7832,19 @@ case "$target_name" in
> echo "TARGET_ABI32=y" >> $config_target_mak
> ;;
> mips|mipsel)
> - mttcg="yes"
> + mttcg="no"
I am not sure the 32-bit targets are affected.
Maybe we can keep it enabled here?
For code below for 5.0 (64-bit targets):
Acked-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> TARGET_ARCH=mips
> echo "TARGET_ABI_MIPSO32=y" >> $config_target_mak
> ;;
> mipsn32|mipsn32el)
> - mttcg="yes"
> + mttcg="no"
> TARGET_ARCH=mips64
> TARGET_BASE_ARCH=mips
> echo "TARGET_ABI_MIPSN32=y" >> $config_target_mak
> echo "TARGET_ABI32=y" >> $config_target_mak
> ;;
> mips64|mips64el)
> - mttcg="yes"
> + mttcg="no"
> TARGET_ARCH=mips64
> TARGET_BASE_ARCH=mips
> echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak
> --
> 2.20.1
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC PATCH for 5.0] configure: disable MTTCG for MIPS guests
2020-03-20 11:45 [RFC PATCH for 5.0] configure: disable MTTCG for MIPS guests Alex Bennée
2020-03-20 13:59 ` Philippe Mathieu-Daudé
@ 2020-03-20 15:53 ` Aleksandar Markovic
2020-03-20 17:08 ` Aleksandar Markovic
2 siblings, 0 replies; 6+ messages in thread
From: Aleksandar Markovic @ 2020-03-20 15:53 UTC (permalink / raw)
To: Alex Bennée
Cc: Aleksandar Rikalo, qemu-devel, Aurelien Jarno,
Philippe Mathieu-Daudé
пет, 20. мар 2020. у 12:45 Alex Bennée <alex.bennee@linaro.org> је написао/ла:
>
> While debugging check-acceptance failures I found an instability in
> the mips64el test case. Briefly the test case:
>
Alex, following up Philippe's hint, do you see failures while using
32-bit targets?
Thanks,
Aleksandar
> retry.py -n 100 -c -- ./mips64el-softmmu/qemu-system-mips64el \
> -display none -vga none -serial mon:stdio \
> -machine malta -kernel ./vmlinux-4.7.0-rc1.I6400 \
> -cpu I6400 -smp 8 -vga std \
> -append "printk.time=0 clocksource=GIC console=tty0 console=ttyS0 panic=-1" \
> --no-reboot
>
> Reports about a 9% failure rate:
>
> Results summary:
> 0: 91 times (91.00%), avg time 5.547 (0.45 varience/0.67 deviation)
> -6: 9 times (9.00%), avg time 3.394 (0.02 varience/0.13 deviation)
> Ran command 100 times, 91 passes
>
> When re-run with "--accel tcg,thread=single" the instability goes
> away.
>
> Results summary:
> 0: 100 times (100.00%), avg time 17.318 (249.76 varience/15.80 deviation)
> Ran command 100 times, 100 passes
>
> Which seems to indicate there is some aspect of the MIPS MTTCG fixes
> that has been missed. Ideally we would fix that but I'm afraid I don't
> have time to investigate and am not super familiar with the
> architecture anyway.
>
> I've disabled all the mips guests as I assume it's a fundamental
> synchronisation primitive that is broken but I haven't tested them all
> (there are a lot!).
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Cc: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
> Cc: Aurelien Jarno <aurelien@aurel32.net>
> Cc: Aleksandar Rikalo <aleksandar.rikalo@rt-rk.com>
> Cc: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> configure | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/configure b/configure
> index 206d22c5153..002792d21dc 100755
> --- a/configure
> +++ b/configure
> @@ -7832,19 +7832,19 @@ case "$target_name" in
> echo "TARGET_ABI32=y" >> $config_target_mak
> ;;
> mips|mipsel)
> - mttcg="yes"
> + mttcg="no"
> TARGET_ARCH=mips
> echo "TARGET_ABI_MIPSO32=y" >> $config_target_mak
> ;;
> mipsn32|mipsn32el)
> - mttcg="yes"
> + mttcg="no"
> TARGET_ARCH=mips64
> TARGET_BASE_ARCH=mips
> echo "TARGET_ABI_MIPSN32=y" >> $config_target_mak
> echo "TARGET_ABI32=y" >> $config_target_mak
> ;;
> mips64|mips64el)
> - mttcg="yes"
> + mttcg="no"
> TARGET_ARCH=mips64
> TARGET_BASE_ARCH=mips
> echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak
> --
> 2.20.1
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC PATCH for 5.0] configure: disable MTTCG for MIPS guests
2020-03-20 11:45 [RFC PATCH for 5.0] configure: disable MTTCG for MIPS guests Alex Bennée
2020-03-20 13:59 ` Philippe Mathieu-Daudé
2020-03-20 15:53 ` Aleksandar Markovic
@ 2020-03-20 17:08 ` Aleksandar Markovic
2020-03-20 17:15 ` Aleksandar Markovic
2020-03-20 17:21 ` Alex Bennée
2 siblings, 2 replies; 6+ messages in thread
From: Aleksandar Markovic @ 2020-03-20 17:08 UTC (permalink / raw)
To: Alex Bennée
Cc: Aleksandar Rikalo, qemu-devel, Aurelien Jarno,
Philippe Mathieu-Daudé
пет, 20. мар 2020. у 12:45 Alex Bennée <alex.bennee@linaro.org> је написао/ла:
>
> While debugging check-acceptance failures I found an instability in
> the mips64el test case. Briefly the test case:
>
> retry.py -n 100 -c -- ./mips64el-softmmu/qemu-system-mips64el \
> -display none -vga none -serial mon:stdio \
> -machine malta -kernel ./vmlinux-4.7.0-rc1.I6400 \
> -cpu I6400 -smp 8 -vga std \
> -append "printk.time=0 clocksource=GIC console=tty0 console=ttyS0 panic=-1" \
> --no-reboot
>
Thank for the findings!
Could you perhaps attach or link to "retry.py"?
Did you run this particular test for the first time now, or it used to
pass before?
Thanks,
Aleksandar
> Reports about a 9% failure rate:
>
> Results summary:
> 0: 91 times (91.00%), avg time 5.547 (0.45 varience/0.67 deviation)
> -6: 9 times (9.00%), avg time 3.394 (0.02 varience/0.13 deviation)
> Ran command 100 times, 91 passes
>
> When re-run with "--accel tcg,thread=single" the instability goes
> away.
>
> Results summary:
> 0: 100 times (100.00%), avg time 17.318 (249.76 varience/15.80 deviation)
> Ran command 100 times, 100 passes
>
> Which seems to indicate there is some aspect of the MIPS MTTCG fixes
> that has been missed. Ideally we would fix that but I'm afraid I don't
> have time to investigate and am not super familiar with the
> architecture anyway.
>
> I've disabled all the mips guests as I assume it's a fundamental
> synchronisation primitive that is broken but I haven't tested them all
> (there are a lot!).
>
> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> Cc: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
> Cc: Aurelien Jarno <aurelien@aurel32.net>
> Cc: Aleksandar Rikalo <aleksandar.rikalo@rt-rk.com>
> Cc: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
> configure | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/configure b/configure
> index 206d22c5153..002792d21dc 100755
> --- a/configure
> +++ b/configure
> @@ -7832,19 +7832,19 @@ case "$target_name" in
> echo "TARGET_ABI32=y" >> $config_target_mak
> ;;
> mips|mipsel)
> - mttcg="yes"
> + mttcg="no"
> TARGET_ARCH=mips
> echo "TARGET_ABI_MIPSO32=y" >> $config_target_mak
> ;;
> mipsn32|mipsn32el)
> - mttcg="yes"
> + mttcg="no"
> TARGET_ARCH=mips64
> TARGET_BASE_ARCH=mips
> echo "TARGET_ABI_MIPSN32=y" >> $config_target_mak
> echo "TARGET_ABI32=y" >> $config_target_mak
> ;;
> mips64|mips64el)
> - mttcg="yes"
> + mttcg="no"
> TARGET_ARCH=mips64
> TARGET_BASE_ARCH=mips
> echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak
> --
> 2.20.1
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC PATCH for 5.0] configure: disable MTTCG for MIPS guests
2020-03-20 17:08 ` Aleksandar Markovic
@ 2020-03-20 17:15 ` Aleksandar Markovic
2020-03-20 17:21 ` Alex Bennée
1 sibling, 0 replies; 6+ messages in thread
From: Aleksandar Markovic @ 2020-03-20 17:15 UTC (permalink / raw)
To: Alex Bennée
Cc: Aleksandar Rikalo, qemu-devel, Aurelien Jarno,
Philippe Mathieu-Daudé
[-- Attachment #1: Type: text/plain, Size: 3159 bytes --]
пет, 20. мар 2020. у 18:08 Aleksandar Markovic <
aleksandar.qemu.devel@gmail.com> је написао/ла:
>
> пет, 20. мар 2020. у 12:45 Alex Bennée <alex.bennee@linaro.org> је
написао/ла:
> >
> > While debugging check-acceptance failures I found an instability in
> > the mips64el test case. Briefly the test case:
> >
> > retry.py -n 100 -c -- ./mips64el-softmmu/qemu-system-mips64el \
> > -display none -vga none -serial mon:stdio \
> > -machine malta -kernel ./vmlinux-4.7.0-rc1.I6400 \
> > -cpu I6400 -smp 8 -vga std \
> > -append "printk.time=0 clocksource=GIC console=tty0 console=ttyS0
panic=-1" \
> > --no-reboot
> >
>
> Thank for the findings!
>
> Could you perhaps attach or link to "retry.py"?
>
Is this the script you used:
https://github.com/stsquad/retry/blob/master/retry.py
> Did you run this particular test for the first time now, or it used to
> pass before?
>
> Thanks,
> Aleksandar
>
> > Reports about a 9% failure rate:
> >
> > Results summary:
> > 0: 91 times (91.00%), avg time 5.547 (0.45 varience/0.67 deviation)
> > -6: 9 times (9.00%), avg time 3.394 (0.02 varience/0.13 deviation)
> > Ran command 100 times, 91 passes
> >
> > When re-run with "--accel tcg,thread=single" the instability goes
> > away.
> >
> > Results summary:
> > 0: 100 times (100.00%), avg time 17.318 (249.76 varience/15.80
deviation)
> > Ran command 100 times, 100 passes
> >
> > Which seems to indicate there is some aspect of the MIPS MTTCG fixes
> > that has been missed. Ideally we would fix that but I'm afraid I don't
> > have time to investigate and am not super familiar with the
> > architecture anyway.
> >
> > I've disabled all the mips guests as I assume it's a fundamental
> > synchronisation primitive that is broken but I haven't tested them all
> > (there are a lot!).
> >
> > Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
> > Cc: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
> > Cc: Aurelien Jarno <aurelien@aurel32.net>
> > Cc: Aleksandar Rikalo <aleksandar.rikalo@rt-rk.com>
> > Cc: Philippe Mathieu-Daudé <f4bug@amsat.org>
> > ---
> > configure | 6 +++---
> > 1 file changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/configure b/configure
> > index 206d22c5153..002792d21dc 100755
> > --- a/configure
> > +++ b/configure
> > @@ -7832,19 +7832,19 @@ case "$target_name" in
> > echo "TARGET_ABI32=y" >> $config_target_mak
> > ;;
> > mips|mipsel)
> > - mttcg="yes"
> > + mttcg="no"
> > TARGET_ARCH=mips
> > echo "TARGET_ABI_MIPSO32=y" >> $config_target_mak
> > ;;
> > mipsn32|mipsn32el)
> > - mttcg="yes"
> > + mttcg="no"
> > TARGET_ARCH=mips64
> > TARGET_BASE_ARCH=mips
> > echo "TARGET_ABI_MIPSN32=y" >> $config_target_mak
> > echo "TARGET_ABI32=y" >> $config_target_mak
> > ;;
> > mips64|mips64el)
> > - mttcg="yes"
> > + mttcg="no"
> > TARGET_ARCH=mips64
> > TARGET_BASE_ARCH=mips
> > echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak
> > --
> > 2.20.1
> >
[-- Attachment #2: Type: text/html, Size: 4548 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [RFC PATCH for 5.0] configure: disable MTTCG for MIPS guests
2020-03-20 17:08 ` Aleksandar Markovic
2020-03-20 17:15 ` Aleksandar Markovic
@ 2020-03-20 17:21 ` Alex Bennée
1 sibling, 0 replies; 6+ messages in thread
From: Alex Bennée @ 2020-03-20 17:21 UTC (permalink / raw)
To: Aleksandar Markovic
Cc: Aleksandar Rikalo, qemu-devel, Aurelien Jarno,
Philippe Mathieu-Daudé
Aleksandar Markovic <aleksandar.qemu.devel@gmail.com> writes:
> пет, 20. мар 2020. у 12:45 Alex Bennée <alex.bennee@linaro.org> је написао/ла:
>>
>> While debugging check-acceptance failures I found an instability in
>> the mips64el test case. Briefly the test case:
>>
>> retry.py -n 100 -c -- ./mips64el-softmmu/qemu-system-mips64el \
>> -display none -vga none -serial mon:stdio \
>> -machine malta -kernel ./vmlinux-4.7.0-rc1.I6400 \
>> -cpu I6400 -smp 8 -vga std \
>> -append "printk.time=0 clocksource=GIC console=tty0 console=ttyS0 panic=-1" \
>> --no-reboot
>>
>
> Thank for the findings!
>
> Could you perhaps attach or link to "retry.py"?
Sure - it's just a noddy python script which I use for repeated testing:
https://github.com/stsquad/retry
> Did you run this particular test for the first time now, or it used to
> pass before?
I only noticed it since it was added to check-acceptance and has been
flakey since added I think.
>
> Thanks,
> Aleksandar
>
>> Reports about a 9% failure rate:
>>
>> Results summary:
>> 0: 91 times (91.00%), avg time 5.547 (0.45 varience/0.67 deviation)
>> -6: 9 times (9.00%), avg time 3.394 (0.02 varience/0.13 deviation)
>> Ran command 100 times, 91 passes
>>
>> When re-run with "--accel tcg,thread=single" the instability goes
>> away.
>>
>> Results summary:
>> 0: 100 times (100.00%), avg time 17.318 (249.76 varience/15.80 deviation)
>> Ran command 100 times, 100 passes
>>
>> Which seems to indicate there is some aspect of the MIPS MTTCG fixes
>> that has been missed. Ideally we would fix that but I'm afraid I don't
>> have time to investigate and am not super familiar with the
>> architecture anyway.
>>
>> I've disabled all the mips guests as I assume it's a fundamental
>> synchronisation primitive that is broken but I haven't tested them all
>> (there are a lot!).
>>
>> Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
>> Cc: Aleksandar Markovic <aleksandar.qemu.devel@gmail.com>
>> Cc: Aurelien Jarno <aurelien@aurel32.net>
>> Cc: Aleksandar Rikalo <aleksandar.rikalo@rt-rk.com>
>> Cc: Philippe Mathieu-Daudé <f4bug@amsat.org>
>> ---
>> configure | 6 +++---
>> 1 file changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/configure b/configure
>> index 206d22c5153..002792d21dc 100755
>> --- a/configure
>> +++ b/configure
>> @@ -7832,19 +7832,19 @@ case "$target_name" in
>> echo "TARGET_ABI32=y" >> $config_target_mak
>> ;;
>> mips|mipsel)
>> - mttcg="yes"
>> + mttcg="no"
>> TARGET_ARCH=mips
>> echo "TARGET_ABI_MIPSO32=y" >> $config_target_mak
>> ;;
>> mipsn32|mipsn32el)
>> - mttcg="yes"
>> + mttcg="no"
>> TARGET_ARCH=mips64
>> TARGET_BASE_ARCH=mips
>> echo "TARGET_ABI_MIPSN32=y" >> $config_target_mak
>> echo "TARGET_ABI32=y" >> $config_target_mak
>> ;;
>> mips64|mips64el)
>> - mttcg="yes"
>> + mttcg="no"
>> TARGET_ARCH=mips64
>> TARGET_BASE_ARCH=mips
>> echo "TARGET_ABI_MIPSN64=y" >> $config_target_mak
>> --
>> 2.20.1
>>
--
Alex Bennée
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2020-03-20 17:22 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-20 11:45 [RFC PATCH for 5.0] configure: disable MTTCG for MIPS guests Alex Bennée
2020-03-20 13:59 ` Philippe Mathieu-Daudé
2020-03-20 15:53 ` Aleksandar Markovic
2020-03-20 17:08 ` Aleksandar Markovic
2020-03-20 17:15 ` Aleksandar Markovic
2020-03-20 17:21 ` Alex Bennée
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.