https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65589
--- Comment #7 from felix.ospald at gmx dot de --- (In reply to Andrew Pinski from comment #6) > I ran for 2836 iterations with the trunk GCC and aarch64 which has a very > weak memory ordering and did not run into a single failure. This is what I would expect for such a simple application. I currently don't know if this is a hardware or software related issue (I suspect software). Probably there is some misconfiguration in the system. I don't know and I also don't known how to find out. I also don't have admin rights. The strage thing is that the value is 0.5 i.e. 1 (or some gibberish) was not assigned to the location. Is it somehow possible that the corresponding thread was exited (e.g. by some service to limit user ressource usage) before the assignment without any notice from OpenMP? However if I remove the "return 1" sometimes there are several unassigned values in a row and the next iteration might work again without error (which would mean that the thread was recreated). As far as I can tell gcc was installed by the SuSE packagamanager and by updates. I don't think there was much configuration by the admin. Also the version is not too old, wich means it could possibly affect many users. On the other hand I don't know if there are any limitations regarding the number of threads in these precompiled packages? Also I'm not sure if this SuSE PREEMPT desktop version is suitable for such server?