[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <26a33cf023024a52bb85bfbe9be2e1fa@AcuMS.aculab.com>
Date: Sat, 18 Apr 2020 13:12:07 +0000
From: David Laight <David.Laight@...LAB.COM>
To: 'Peter Zijlstra' <peterz@...radead.org>,
Jakub Jelinek <jakub@...hat.com>
CC: Borislav Petkov <bp@...en8.de>,
Sergei Trofimovich <slyfox@...too.org>,
Michael Matz <matz@...e.de>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Thomas Gleixner <tglx@...utronix.de>,
"Ingo Molnar" <mingo@...hat.com>, "H. Peter Anvin" <hpa@...or.com>,
Andy Lutomirski <luto@...nel.org>,
"x86@...nel.org" <x86@...nel.org>
Subject: RE: [PATCH v2] x86: fix early boot crash on gcc-10
From: Peter Zijlstra
> Sent: 17 April 2020 11:38
>
> On Fri, Apr 17, 2020 at 10:58:59AM +0200, Jakub Jelinek wrote:
> > Or go with the for (;;);, I don't think any compiler optimizes those away;
> > GCC 10 for C++ can optimize away infinite loops that have some conditional
> > exit because the language guarantees forward progress, but the C language
> > rules are different and for unconditional infinite loops GCC doesn't
> > optimize them away even if explicitly asked to -ffinite-loops.
>
> 'Funnily' there are people building the kernel with C++ :/
Can't you 'make progress' by using longjmp() to exit a signal handler?
David
-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Powered by blists - more mailing lists