All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Nick Desaulniers <ndesaulniers@google.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>,
	Android Kernel Team <kernel-team@android.com>,
	linux-arch <linux-arch@vger.kernel.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Luc Van Oostenryck <luc.vanoostenryck@gmail.com>,
	Michael Ellerman <mpe@ellerman.id.au>,
	Peter Zijlstra <peterz@infradead.org>,
	Segher Boessenkool <segher@kernel.crashing.org>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Will Deacon <will@kernel.org>,
	Masahiro Yamada <masahiroy@kernel.org>
Subject: Re: [RFC PATCH 1/8] compiler/gcc: Emit build-time warning for GCC prior to version 4.8
Date: Wed, 15 Jan 2020 11:49:03 +0100	[thread overview]
Message-ID: <CAK8P3a3JfUjm88CLqkvAmCoEA1FsmQ33sfHGK4=Y5iuhWxet5Q@mail.gmail.com> (raw)
In-Reply-To: <20200114213914.198223-1-ndesaulniers@google.com>

On Tue, Jan 14, 2020 at 10:39 PM Nick Desaulniers
<ndesaulniers@google.com> wrote:
>
> On Fri, Jan 10, 2020 at 06:35:02PM +0100, Arnd Bergmann wrote:
> > On Fri, Jan 10, 2020 at 5:56 PM Will Deacon <will@kernel.org> wrote:
> > >
> > > Prior to version 4.8, GCC may miscompile READ_ONCE() by erroneously
> > > discarding the 'volatile' qualifier:
> > >
> > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58145
> > >
> > > We've been working around this using some nasty hacks which make
> > > READ_ONCE() both horribly complicated and also prevent us from enforcing
> > > that it is only used on scalar types. Since GCC 4.8 is pretty old for
> > > kernel builds now, emit a warning if we detect it during the build.
> >
> > No objection to recommending gcc-4.8, but I think this should either
> > just warn once during the kernel build instead of for every file, or
> > it should become a hard requirement.
>
> Yeah, hard requirement sounds good to me. Arnd, do you have stats on which
> distros have which versions of GCC (IIRC, you had some stats for the GCC 4.6
> upgrade)? This allows us to clean up more cruft in the kernel (grep for
> GCC_VERSION).

This is the list that Kirill and I came up with in the thread I linked to

> - Debian 8.0 Jessie has 4.9.2, EOL 2020-05
> - Ubuntu 14.04 LTS Trusty has 4.8.2, EOL 2019-04;
> - Fedora 21 has 4.9.2, EOL 2015-12;
> - OpenSUSE 42.3 has 4.8.5, EOL 2019-06;
> - RHEL 7.7 has 4.8.5, EOL 2024-06;
> - RHEL 6.9 has 4.4.7, EOL 2020-11;
> - SUSE 12-SP4 has 4.8.6, EOL 2024, extended support 2027
> - Oracle 7.6 has 4.8.5, EOL ?;
> - Slackware 14.1 (no EOL announced): gcc-4.8

In an older thread about moving to gcc-4.3 or 4.6 as a minimum,
this were the even older distros:

> - RHEL 5.x has 4.1; extended support EOL 2020
> - SLES11 had gcc-4.3; extended support EOL 2022
> - Debian  Wheezy (oldoldstable) had gcc-4.6, EOL 2018.
> - OpenWRT 12.07 Attitude Adjustment had gcc-4.6
>    and is still used with devices that have only 4MB flash / 32 MB RAM

      Arnd

  parent reply	other threads:[~2020-01-15 10:49 UTC|newest]

Thread overview: 32+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-10 16:56 [RFC PATCH 0/8] Rework READ_ONCE() to improve codegen Will Deacon
2020-01-10 16:56 ` [RFC PATCH 1/8] compiler/gcc: Emit build-time warning for GCC prior to version 4.8 Will Deacon
2020-01-10 17:35   ` Arnd Bergmann
2020-01-10 17:53     ` Joe Perches
2020-01-13 14:39       ` Arnd Bergmann
2020-01-13 15:35         ` Masahiro Yamada
2020-01-13 14:27     ` Will Deacon
2020-01-14 21:39     ` Nick Desaulniers
2020-01-15 10:35       ` David Laight
2020-01-15 10:49       ` Arnd Bergmann [this message]
2020-01-10 16:56 ` [RFC PATCH 2/8] netfilter: Avoid assigning 'const' pointer to non-const pointer Will Deacon
2020-01-10 16:56 ` [RFC PATCH 3/8] fault_inject: Don't rely on "return value" from WRITE_ONCE() Will Deacon
2020-01-10 16:56 ` [RFC PATCH 4/8] READ_ONCE: Simplify implementations of {READ,WRITE}_ONCE() Will Deacon
2020-01-10 16:56 ` [RFC PATCH 5/8] READ_ONCE: Enforce atomicity for {READ,WRITE}_ONCE() memory accesses Will Deacon
2020-01-10 19:24   ` Arnd Bergmann
2020-01-13 16:16     ` Will Deacon
2020-01-10 16:56 ` [RFC PATCH 6/8] READ_ONCE: Drop pointer qualifiers when reading from scalar types Will Deacon
2020-01-10 18:54   ` Linus Torvalds
2020-01-13 14:59     ` Will Deacon
2020-01-13 17:42       ` Luc Van Oostenryck
2020-01-13 19:31       ` Linus Torvalds
2020-01-10 16:56 ` [RFC PATCH 7/8] locking/barriers: Use '__unqual_scalar_typeof' for load-acquire macros Will Deacon
2020-01-10 19:42   ` Arnd Bergmann
2020-01-13 15:01     ` Will Deacon
2020-01-10 16:56 ` [RFC PATCH 8/8] arm64: barrier: Use '__unqual_scalar_typeof' for acquire/release macros Will Deacon
2020-01-10 17:45   ` Mark Rutland
2020-01-10 17:58 ` [RFC PATCH 0/8] Rework READ_ONCE() to improve codegen Arnd Bergmann
2020-01-10 19:46 ` Arnd Bergmann
2020-01-10 20:14   ` Linus Torvalds
2020-01-13 13:03     ` Arnd Bergmann
2020-01-13 11:20 ` David Laight
2020-01-13 12:40 ` Christian Borntraeger

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='CAK8P3a3JfUjm88CLqkvAmCoEA1FsmQ33sfHGK4=Y5iuhWxet5Q@mail.gmail.com' \
    --to=arnd@arndb.de \
    --cc=borntraeger@de.ibm.com \
    --cc=kernel-team@android.com \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luc.vanoostenryck@gmail.com \
    --cc=masahiroy@kernel.org \
    --cc=mpe@ellerman.id.au \
    --cc=ndesaulniers@google.com \
    --cc=peterz@infradead.org \
    --cc=segher@kernel.crashing.org \
    --cc=torvalds@linux-foundation.org \
    --cc=will@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.