https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100182
H.J. Lu <hjl.tools at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|FIXED |--- --- Comment #28 from H.J. Lu <hjl.tools at gmail dot com> --- 29_atomics/atomic_ref/wait_notify.c has the same issue on Linux/x86-64 with -m32: (gdb) bt #0 0xf7f5455d in __kernel_vsyscall () #1 0xf7b3a46b in syscall () from /lib/libc.so.6 #2 0x0804995d in std::__detail::__platform_wait<int> ( __addr=0x804d480 <std::__detail::__waiter_pool_base::_S_for(void const*)::__w+960>, __val=1) at /export/users/hjl/build/gnu/tools-build/gcc-gitlab-native/build-x86_64-linux/x86_64-pc-linux-gnu/32/libstdc++-v3/include/bits/atomic_wait.h:104 #3 0x08049afa in std::__detail::__waiter_pool::_M_do_wait (__old=1, __addr=0x804d480 <std::__detail::__waiter_pool_base::_S_for(void const*)::__w+960>, this=<optimized out>) at /export/users/hjl/build/gnu/tools-build/gcc-gitlab-native/build-x86_64-linux/x86_64-pc-linux-gnu/32/libstdc++-v3/include/bits/atomic_wait.h:261 #4 std::__detail::__waiter<std::integral_constant<bool, true> >::_M_do_wait_v<int, std::__atomic_impl::wait<int>(int const*, std::remove_volatile<int>::type, std::memory_order)::{lambda()#1}>(int, std::__atomic_impl::wait<int>(int const*, std::remove_volatile<int>::type, std::memory_order)::{lambda()#1}) (__vfn=..., __old=42, this=<synthetic pointer>) at /export/users/hjl/build/gnu/tools-build/gcc-gitlab-native/build-x86_64-linux/x86_64-pc-linux-gnu/32/libstdc++-v3/include/bits/atomic_wait.h:400 #5 std::__atomic_wait_address_v<int, std::__atomic_impl::wait<int>(int const*, std::remove_volatile<int>::type, std::memory_order)::{lambda()#1}>(int const*, int, std::__atomic_impl::wait<int>(int const*, std::remove_volatile<int>::type, std::memory_order)::{lambda()#1}) (__addr=0xffaf629c, __old=42, __vfn=...) --Type <RET> for more, q to quit, c to continue without paging-- at /export/users/hjl/build/gnu/tools-build/gcc-gitlab-native/build-x86_64-linux/x86_64-pc-linux-gnu/32/libstdc++-v3/include/bits/atomic_wait.h:430 #6 0x08049bb2 in std::__atomic_impl::wait<int> ( __m=std::memory_order::seq_cst, __old=<optimized out>, __ptr=<optimized out>) at /export/users/hjl/build/gnu/tools-build/gcc-gitlab-native/build-x86_64-linux/x86_64-pc-linux-gnu/32/libstdc++-v3/include/bits/atomic_base.h:1018 #7 std::__atomic_ref<int, true, false>::wait (__m=std::memory_order::seq_cst, __old=<optimized out>, this=0xffaf62a4) at /export/users/hjl/build/gnu/tools-build/gcc-gitlab-native/build-x86_64-linux/x86_64-pc-linux-gnu/32/libstdc++-v3/include/bits/atomic_base.h:1570 #8 test<int> (va=0, vb=42) at /export/gnu/import/git/gitlab/x86-gcc/libstdc++-v3/testsuite/29_atomics/atomic_ref/wait_notify.cc:44 #9 0x08049250 in main () at /export/gnu/import/git/gitlab/x86-gcc/libstdc++-v3/testsuite/29_atomics/atomic_ref/wait_notify.cc:52 (gdb) when GCC is configured with --enable-cet --with-demangler-in-ld --prefix=/usr/gcc-12.0.0-native --with-local-prefix=/usr/local --enable-gnu-indirect-function --enable-clocale=gnu --with-system-zlib --with-target-system-zlib --with-fpmath=sse --with-arch=native --with-cpu=native --enable-languages=c,c++,fortran,lto,objc,ada,obj-c++,go where native == skylake-avx512. It happens one out of ~10 runs.