linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Kees Cook <keescook@chromium.org>
To: Peter Zijlstra <peterz@infradead.org>
Cc: hpa@zytor.com, Joe Perches <joe@perches.com>,
	Pavel Machek <pavel@ucw.cz>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Miguel Ojeda <miguel.ojeda.sandonis@gmail.com>,
	Borislav Petkov <bp@alien8.de>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>,
	"Gustavo A . R . Silva" <gustavo@embeddedor.com>,
	Arnaldo Carvalho de Melo <acme@kernel.org>,
	Kan Liang <kan.liang@linux.intel.com>,
	Namhyung Kim <namhyung@kernel.org>, Jiri Olsa <jolsa@redhat.com>,
	Alexander Shishkin <alexander.shishkin@linux.intel.com>,
	Shawn Landden <shawn@git.icu>,
	x86@kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [RFC PATCH] compiler_attributes.h: Add 'fallthrough' pseudo keyword for switch/case use
Date: Wed, 31 Jul 2019 13:02:07 -0700	[thread overview]
Message-ID: <201907311301.EC1D84F@keescook> (raw)
In-Reply-To: <20190731184832.GZ31381@hirez.programming.kicks-ass.net>

On Wed, Jul 31, 2019 at 08:48:32PM +0200, Peter Zijlstra wrote:
> On Wed, Jul 31, 2019 at 11:24:36AM -0700, hpa@zytor.com wrote:
> > >> > +/*
> > >> > + * Add the pseudo keyword 'fallthrough' so case statement blocks
> > >> > + * must end with any of these keywords:
> > >> > + *   break;
> > >> > + *   fallthrough;
> > >> > + *   goto <label>;
> > >> > + *   return [expression];
> > >> > + *
> > >> > + *  gcc: >https://gcc.gnu.org/onlinedocs/gcc/Statement-Attributes.html#Statement-Attributes
> > >> > + */
> > >> > +#if __has_attribute(__fallthrough__)
> > >> > +# define fallthrough                   __attribute__((__fallthrough__))
> > >> > +#else
> > >> > +# define fallthrough                    do {} while (0)  /* fallthrough */
> > >> > +#endif
> > >> > +
> 
> > If the comments are stripped, how would the compiler see them to be
> > able to issue a warning? I would guess that it is retained or replaced
> > with some other magic token.
> 
> Everything that has the warning (GCC-7+/CLANG-9) has that attribute.

I'd like to make sure we don't regress Coverity most of all. If the
recent updates to the Coverity scanner include support for the attribute
now, then I'm all for it. :)

-- 
Kees Cook

  reply	other threads:[~2019-07-31 20:02 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-31  5:04 [PATCH] net: sctp: Rename fallthrough label to unhandled Joe Perches
2019-07-31  5:35 ` [RFC PATCH] compiler_attributes.h: Add 'fallthrough' pseudo keyword for switch/case use Joe Perches
2019-07-31  9:02   ` Peter Zijlstra
2019-07-31  9:34     ` Joe Perches
2019-07-31 17:14   ` Pavel Machek
2019-07-31 17:51     ` Joe Perches
2019-07-31 18:24       ` hpa
2019-07-31 18:48         ` Peter Zijlstra
2019-07-31 20:02           ` Kees Cook [this message]
2019-07-31 20:59             ` Miguel Ojeda
2019-07-31 22:07               ` Joe Perches
2019-08-01  0:00                 ` Miguel Ojeda
2019-08-01 12:25             ` Peter Zijlstra
2019-08-15 18:15             ` Kees Cook
2019-08-15 22:31               ` Kees Cook
2019-09-16 22:19               ` treewide replacement of fallthrough comments with "fallthrough" macro (was Re: [RFC PATCH] compiler_attributes.h: Add 'fallthrough' pseudo keyword for switch/case use) Kees Cook
2019-09-17 22:26                 ` Joe Perches
2019-09-17 23:38                   ` Kees Cook
2019-07-31 21:01           ` [RFC PATCH] compiler_attributes.h: Add 'fallthrough' pseudo keyword for switch/case use hpa
2019-07-31 23:55             ` Miguel Ojeda
2019-08-01  6:10               ` hpa
2019-08-01  7:52                 ` Joe Perches
2019-08-01 12:24                 ` Peter Zijlstra
2019-08-01 20:09                   ` hpa
2019-08-01 20:26                     ` Miguel Ojeda
2019-08-01 20:47                       ` Joe Perches
2019-08-02 11:00                       ` Neil Horman
2019-08-02 12:34                         ` Pavel Machek
2019-08-02 16:09                           ` Kees Cook
2019-08-02 16:16                             ` Joe Perches
2019-08-04 18:01   ` Joe Perches
2019-08-04 18:09     ` Linus Torvalds
2019-08-04 19:38       ` Miguel Ojeda
2019-08-05  0:39       ` Joe Perches
2019-08-05  1:18         ` Nathan Chancellor
2019-08-05  2:01           ` Joe Perches
2019-07-31 11:19 ` [PATCH] net: sctp: Rename fallthrough label to unhandled Neil Horman
2019-07-31 11:32   ` Joe Perches
2019-07-31 12:16     ` Neil Horman
2019-07-31 16:35       ` Joe Perches
2019-07-31 20:58         ` Neil Horman
2019-07-31 22:23           ` Joe Perches
2019-08-01 10:50             ` Neil Horman
2019-08-01 17:42               ` Joe Perches
2019-08-01 20:48                 ` Neil Horman
2019-08-05 11:49                 ` David Laight
2019-08-02 17:47       ` Joe Perches
2019-08-02 23:19         ` David Miller
2019-08-02 23:26           ` Joe Perches
2019-08-03 18:01           ` Joe Perches
2019-08-04 19:26           ` Neil Horman
2019-08-02 17:50 ` Neil Horman

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=201907311301.EC1D84F@keescook \
    --to=keescook@chromium.org \
    --cc=acme@kernel.org \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=bp@alien8.de \
    --cc=gustavo@embeddedor.com \
    --cc=hpa@zytor.com \
    --cc=joe@perches.com \
    --cc=jolsa@redhat.com \
    --cc=kan.liang@linux.intel.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=miguel.ojeda.sandonis@gmail.com \
    --cc=mingo@redhat.com \
    --cc=namhyung@kernel.org \
    --cc=pavel@ucw.cz \
    --cc=peterz@infradead.org \
    --cc=shawn@git.icu \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).