On 01/03/20 22:33, Linus Torvalds wrote: > On Sun, Mar 1, 2020 at 1:03 PM Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: >> >> Paolo Bonzini (4): >> KVM: allow disabling -Werror > > Honestly, this is just badly done. > > You've basically made it enable -Werror only for very random > configurations - and apparently the one you test. > Doing things like COMPILE_TEST disables it, but so does not having > EXPERT enabled. Yes, I took this from the i915 Kconfig. It's temporary, in 5.7 I am planning to get it to just !KASAN, but for 5.6 I wanted to avoid more breakage so I added the other restrictions. The difference between x86-64 and i386 is really just the frame size warnings, which Christoph triggered because of a higher CONFIG_NR_CPUS. (BTW, perhaps it makes sense for Sparse to have something like __nostack for structs that contain potentially large arrays). > I've merged this, but I wonder why you couldn't just do what I > suggested originally? Seriously, if you script your build tests, > and don't even look at the results, then you might as well use > > make KCFLAGS=-Werror I did that and I'm also adding W=1; and I threw in a smaller than default frame size warning option too because I don't want cpumasks on the stack anyway. However, that wouldn't help contributors. I'm okay if I get W=1 or frame size warnings from patches from other contributors, but I think it's a disservice to them that they have to set KCFLAGS in order to avoid warnings. > the "now it causes problems for > random compiler versions" is a real issue again - but at least it > wouldn't be a random kernel subsystem that happens to trigger it, it > would be a _generic_ issue, and we'd have everybody involved when a > compiler change introduces a new warning. Yes, and GCC prereleases are tested with Linux, for example by doing full Rawhide rebuilds. If we started using -Werror by default (including allyesconfig), they would probably report warnings early. Same for clang. I hope that Linux can have -Werror everywhere, or at least a CONFIG_WERROR option that does it even if it defaults to n for a release or more. But I don't think we can get there without first seeing what issues pop up in a few subsystems or arches---even before considering new compilers---so I decided I would just try. Paolo > Adding the powerpc people, since they have more history with their > somewhat less hacky one. Except that one automatically gets disabled > by "make allmodconfig" and friends, which is also kind of pointless. > Michael, what tends to be the triggers for people using > PPC_DISABLE_WERROR? Do you have reports for it? Could we have a > _generic_ option that just gets enabled by default, except it gets > disabled by _known_ issues (like KASAN). > > Being disabled for "make allmodconfig" is kind of against one of the > _points_ of "the build should be warning-free".