пет, 20. мар 2020. у 18:08 Aleksandar Markovic <
address@hidden> је написао/ла:
>
> пет, 20. мар 2020. у 12:45 Alex Bennée <
address@hidden> је написао/ла:
> >
> > 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 <
address@hidden>
> > Cc: Aleksandar Markovic <
address@hidden>
> > Cc: Aurelien Jarno <
address@hidden>
> > Cc: Aleksandar Rikalo <
address@hidden>
> > Cc: Philippe Mathieu-Daudé <
address@hidden>
> > ---
> > 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
> >