All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Arvind Sankar <nivedita@alum.mit.edu>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	Andy Lutomirski <luto@amacapital.net>,
	Nick Desaulniers <ndesaulniers@google.com>,
	Borislav Petkov <bp@suse.de>, Kalle Valo <kvalo@codeaurora.org>,
	linux-wireless <linux-wireless@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"the arch/x86 maintainers" <x86@kernel.org>,
	Kees Cook <keescook@chromium.org>,
	Thomas Gleixner <tglx@linutronix.de>
Subject: Re: gcc-10: kernel stack is corrupted and fails to boot
Date: Thu, 14 May 2020 10:40:44 +0200	[thread overview]
Message-ID: <CAK8P3a1Cfzu7L30bFP-Sf2_GbkN_10CCJsbefTXyfnGF16uHMA@mail.gmail.com> (raw)
In-Reply-To: <20200514052234.GA1894416@rani.riverdale.lan>

On Thu, May 14, 2020 at 7:22 AM Arvind Sankar <nivedita@alum.mit.edu> wrote:
> On Wed, May 13, 2020 at 09:52:07PM -0700, Linus Torvalds wrote:
> > On Wed, May 13, 2020, 20:50 Andy Lutomirski <luto@amacapital.net> wrote:
> The gcc docs [1,2] at least don't inspire much confidence that this will
> continue working with plain asm("") though:
>
> "Note that GCC’s optimizers can move asm statements relative to other
> code, including across jumps."
> ...
> "Note that the compiler can move even volatile asm instructions relative
> to other code, including across jump instructions."
>
> Even if we don't include an instruction in it I think it should at least
> have a memory clobber, to stop the compiler from deciding that it can be
> moved before the call so it can do the tail-call optimization.

I think LTO would still be able to notice that cpu_startup_entry() can
be annotated __attribute__((noreturn)) and optimize the callers
accordingly, which in turn would allow a tail call again after dead code
elimination.

     Arnd

  reply	other threads:[~2020-05-14  8:41 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-09 12:06 [PATCH net-next 1/2] ath10k: fix gcc-10 zero-length-bounds warnings Arnd Bergmann
2020-05-09 12:06 ` Arnd Bergmann
2020-05-09 12:06 ` [PATCH net-next 2/2] ath10k: fix ath10k_pci struct layout Arnd Bergmann
2020-05-09 12:06   ` Arnd Bergmann
2020-05-11 12:05   ` Kalle Valo
2020-05-11 12:05     ` Kalle Valo
2020-05-11 12:17     ` Kalle Valo
2020-05-11 12:17       ` Kalle Valo
2020-05-11 12:39       ` Arnd Bergmann
2020-05-11 12:39         ` Arnd Bergmann
2020-05-13  6:50       ` gcc-10: kernel stack is corrupted and fails to boot Kalle Valo
2020-05-13  8:49         ` Arnd Bergmann
2020-05-13 12:45           ` Kalle Valo
2020-05-13 13:45             ` Arnd Bergmann
2020-05-13 15:31               ` Kalle Valo
2020-05-13 16:00                 ` Arnd Bergmann
2020-05-13 16:07                   ` David Laight
2020-05-14  9:13                 ` Harald Arnesen
2020-05-13 15:48         ` Arvind Sankar
2020-05-13 21:28           ` Arnd Bergmann
2020-05-13 21:41             ` Borislav Petkov
2020-05-13 21:49               ` Arnd Bergmann
2020-05-13 22:20                 ` Borislav Petkov
2020-05-13 22:51                   ` Arvind Sankar
2020-05-13 23:13                   ` Linus Torvalds
2020-05-13 23:36                     ` Borislav Petkov
2020-05-14  0:11                       ` Linus Torvalds
2020-05-14  0:51                         ` Nick Desaulniers
2020-05-14  2:20                           ` Linus Torvalds
2020-05-14  3:50                             ` Andy Lutomirski
     [not found]                               ` <CAHk-=wgiGxRgJGS-zyer1C_x2MQUVo6iZn0=aJyuFTqJWk-mpA@mail.gmail.com>
2020-05-14  5:22                                 ` Arvind Sankar
2020-05-14  8:40                                   ` Arnd Bergmann [this message]
2020-05-14 13:27                                     ` [PATCH] x86: Fix early boot crash on gcc-10, third try Borislav Petkov
2020-05-14 14:45                                       ` Kalle Valo
2020-05-14 15:50                                     ` gcc-10: kernel stack is corrupted and fails to boot Arvind Sankar
2020-05-14  8:11                             ` David Laight
2020-05-13 23:07                 ` Linus Torvalds
2020-05-09 15:48 ` [PATCH net-next 1/2] ath10k: fix gcc-10 zero-length-bounds warnings Gustavo A. R. Silva
2020-05-09 15:48   ` Gustavo A. R. Silva
2020-05-11 12:02   ` Kalle Valo
2020-05-11 12:02     ` Kalle Valo
2020-05-11 12:46     ` Arnd Bergmann
2020-05-11 12:46       ` Arnd Bergmann
2020-05-11 13:09       ` Kalle Valo
2020-05-11 13:09         ` Kalle Valo
2020-05-11 13:47         ` Arnd Bergmann
2020-05-11 13:47           ` Arnd Bergmann
2020-05-12  7:33 ` Kalle Valo
2020-05-12  7:33 ` Kalle Valo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAK8P3a1Cfzu7L30bFP-Sf2_GbkN_10CCJsbefTXyfnGF16uHMA@mail.gmail.com \
    --to=arnd@arndb.de \
    --cc=bp@suse.de \
    --cc=keescook@chromium.org \
    --cc=kvalo@codeaurora.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=luto@amacapital.net \
    --cc=ndesaulniers@google.com \
    --cc=nivedita@alum.mit.edu \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.