[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug 1883268] Re: random errors on aarch64 when executing __aarch64_cas8
From: |
Richard Henderson |
Subject: |
[Bug 1883268] Re: random errors on aarch64 when executing __aarch64_cas8_acq_rel |
Date: |
Sun, 28 Jun 2020 21:52:38 -0000 |
FWIW, I cannot reproduce the problem with x86_64 host,
but I can reproduce it on a 32-bit i686 host.
** Changed in: qemu
Status: New => Confirmed
--
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1883268
Title:
random errors on aarch64 when executing __aarch64_cas8_acq_rel
Status in QEMU:
Confirmed
Bug description:
Hello,
Since I upgraded to qemu-5.0 when executing the GCC testsuite,
I've noticed random failures of g++.dg/ext/sync-4.C.
I'm attaching the source of the testcase, the binary executable and
the qemu traces (huge, 111MB!) starting at main (with qemu-aarch64
-cpu cortex-a57 -R 0 -d
in_asm,int,exec,cpu,unimp,guest_errors,nochain)
The traces where generated by a CI build, I built the executable
manually but I expect it to be the same as the one executed by CI.
In seems the problem occurs in f13, which leads to a call to abort()
The preprocessed version of f13/t13 are as follows:
static bool f13 (void *p) __attribute__ ((noinline));
static bool f13 (void *p)
{
return (__sync_bool_compare_and_swap((ditype*)p, 1, 2));
}
static void t13 ()
{
try {
f13(0);
}
catch (...) {
return;
}
abort();
}
When looking at the execution traces at address 0x00400c9c, main calls f13,
which in turn calls __aarch64_cas8_acq_rel (at 0x00401084)
__aarch64_cas8_acq_rel returns to f13 (address 0x0040113c), then f13 returns
to main (0x0040108c) which then calls abort (0x00400ca0)
I'm not quite sure what's wrong :-(
I've not noticed such random problems with native aarch64 hardware.
To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1883268/+subscriptions
- [Bug 1883268] [NEW] random errors on aarch64 when executing __aarch64_cas8_acq_rel, Christophe Lyon, 2020/06/12
- [Bug 1883268] Re: random errors on aarch64 when executing __aarch64_cas8_acq_rel, Christophe Lyon, 2020/06/12
- [Bug 1883268] Re: random errors on aarch64 when executing __aarch64_cas8_acq_rel, Christophe Lyon, 2020/06/12
- [Bug 1883268] Re: random errors on aarch64 when executing __aarch64_cas8_acq_rel, Alex Bennée, 2020/06/12
- [Bug 1883268] Re: random errors on aarch64 when executing __aarch64_cas8_acq_rel,
Richard Henderson <=
- [Bug 1883268] Re: random errors on aarch64 when executing __aarch64_cas8_acq_rel, Richard Henderson, 2020/06/28
- [Bug 1883268] Re: random errors on aarch64 when executing __aarch64_cas8_acq_rel, Christophe Lyon, 2020/06/29