----- On Apr 19, 2019, at 5:13 PM, Mathieu Desnoyers mathieu.desnoy...@efficios.com wrote:
> ----- On Apr 19, 2019, at 2:53 PM, Linus Torvalds > torva...@linux-foundation.org > wrote: > >> On Fri, Apr 19, 2019 at 11:46 AM tip-bot for Mathieu Desnoyers >> <tip...@zytor.com> wrote: >>> >>> rseq/selftests/x86: Work around bogus gcc-8 optimisation >>> >>> At least the following versions of gcc-8: >>> >>> - gcc version 8.0.1 20180414 (experimental) [trunk revision 259383] (Ubuntu >>> 8-20180414-1ubuntu2) >>> - gcc 8.2.0-7ubuntu1 (Ubuntu 18.10 (Cosmic)), >>> >>> generate broken assembler with asm goto that have a thread-local storage >>> "m" input operand on both x86-32 and x86-64. For instance: >> >> Is there a gcc bugzilla for this? Shouldn't that be mentioned here? > > My google-fu did not find any match, so I don't think so. I'll open one > shortly. > >> >> Also, we use "asm goto" together with "m" all the time in the kernel. >> In fact, it's the most common case, with the RMWcc ops being generated >> with that. I realize that we don't use the gcc thread-local storage >> for them (we often do use our *own* thread-local storage), but it >> would be good to have that gcc bugzilla to see why it can only affect >> those user level "__thread" cases. > > Indeed, it would be good to investigate and understand all problematic > scenarios triggering this bug. I've opened a ticket on gcc's bugzilla: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90193 Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com