On 24 August 2017 at 14:20, Arnd Bergmann <a...@arndb.de> wrote: > On Thu, Aug 24, 2017 at 6:45 PM, Joe Stringer <j...@ovn.org> wrote: >> Recent changes[0] to make use of __compiletime_assert() from container_of() >> increased the scope of this macro, resulting in a wider set of >> situations where developers cannot compile their code using "-O0". I >> noticed this when making use of the macro in my own development, and >> spent more time than I'd like to admit tracking the problem down. This >> patch documents the behavior in lieu of a compile-time assertion >> implementation that does not rely on optimizations. >> >> Example compilation failure: > > Maybe the macro should be enclosed in "#ifdef __OPTIMIZE__"? > > Generally speaking we at least rely on function inlining to create a > working kernel, but sometimes there may be a reason to compile a > single file without optimizations.
Right. The above approach seems okay to me, if the developer really doesn't notice issues when they've been debugging -O0, it should be picked up fairly quickly during review.