From: Michael Ellerman <email@example.com> To: Joe Stringer <firstname.lastname@example.org>, Andrew Morton <email@example.com> Cc: LKML <firstname.lastname@example.org>, Ian Abbott <email@example.com>, Arnd Bergmann <firstname.lastname@example.org>, Michal Nazarewicz <email@example.com>, Kees Cook <firstname.lastname@example.org> Subject: Re: [PATCH] compiler: Don't perform compiletime_assert with -O0. Date: Thu, 31 Aug 2017 12:16:53 +1000 [thread overview] Message-ID: <email@example.com> (raw) In-Reply-To: <CAPWQB7EzQifD9m+QqhbAZ7uA53dQBDLRKjpa9rZxKSb3ctuHOQ@mail.gmail.com> Joe Stringer <firstname.lastname@example.org> writes: > On 30 August 2017 at 15:59, Andrew Morton <email@example.com> wrote: >> On Tue, 29 Aug 2017 16:01:14 -0700 Joe Stringer <firstname.lastname@example.org> wrote: >> >>> Recent changes to make use of __compiletime_assert() from >>> container_of() increased the usage of this macro, allowing developers to >>> notice type conflicts in usage of container_of() at compile time. >>> However, the implementation of __compiletime_assert relies on compiler >>> optimizations to report an error. This means that if a developer uses >>> "-O0" with any code that performs container_of(), the compiler will >>> always report an error regardless of whether there is an actual problem >>> in the code. >>> >>> This patch disables compile_time_assert when optimizations are disabled >>> to allow such code to compile with CFLAGS="-O0". >> >> I'm wondering if we should backport this into -stable. Probably not, >> as I doubt if many people use -O0 - it's a pretty weird thing to do. I >> used to use it a bit because it makes the ".lst" files (intermingled .c >> and .s files) make more sense. In fact I'm wondering how you even >> noticed this? > > Local debugging, was trying to get a better understanding of the > underlying assembly and the code I was using just happened to use > container_of(). Does the kernel actually build with -O0? I didn't think it actually worked. cheers
next prev parent reply other threads:[~2017-08-31 2:16 UTC|newest] Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top 2017-08-29 23:01 Joe Stringer 2017-08-30 10:26 ` Michal Nazarewicz 2017-08-30 18:03 ` Joe Stringer 2017-08-30 22:59 ` Andrew Morton 2017-08-30 23:22 ` Joe Stringer 2017-08-31 2:16 ` Michael Ellerman [this message] 2017-08-31 6:52 ` Joe Stringer
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 \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --firstname.lastname@example.org \ --email@example.com \ --subject='Re: [PATCH] compiler: Don'\''t perform compiletime_assert with -O0.' \ /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
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.