On Fri, Apr 21, 2017 at 4:59 PM, Mark Brown <broonie@xxxxxxxxxx> wrote: > On Fri, Apr 21, 2017 at 04:27:14PM +0200, Arnd Bergmann wrote: >> On Thu, Apr 20, 2017 at 7:04 PM, kernelci.org bot <bot@xxxxxxxxxxxx> wrote: >> > stable/linux-3.18.y build: 204 builds: 5 failed, 199 passed, 35 errors, 212 warnings (v3.18.49) > >> > 2 arch/mips/mm/fault.c:321:1: error: the frame size of 1104 bytes is larger >> > than 1024 bytes [-Werror=frame-larger-than=] > >> This is a result of a newer compiler version, combined with the -Werror >> flag that is applied to arch/mips/, and two of the mips defconfigs overriding >> CONFIG_FRAME_WARN to 1024 on a 64-bit architecture (probably by >> accident). > > I'm wondering how good an idea it is to leave -Werror on in stable > kernels given that they're very likely to get used with newer compilers > at some point. But then I've never been a fan of -Werror in the first > place. I agree it's problematic as you never know what future compilers will warn about. At the moment, alpha, mips, sh and sparc turn on -Werror unconditionally for architecture specific code and there are only five device drivers do this as well. The powerpc architecture and the i915 driver have a Kconfig option to control whether the warnings are enabled, and they are turned off in allmodconfig. I think this is just an artifact from the old days when we always had tons of warnings in a given build, but we should try to replace it with something better instead of just removing it (which would be easy enough to do). I personally build with 'make CC="gcc -Werror" and fix all the warnings I run into. I have some plans to improve it by hooking into the scripts/Makefile.extrawarn infrastructure. Today, we can use "make W=1" or "make W=12" to turn on extra levels of warnings, and I'd like to add "make E=0" or "make E=012" as a way to turn on errors for the default (0) or higher (1, 2, 3) levels, but this takes a little more preparation. Arnd