LWN.net Logo

Re: PATCH: Add --size-check=[error|warning]

From:  Linus Torvalds <torvalds-AT-linux-foundation.org>
To:  Steven Rostedt <rostedt-AT-goodmis.org>
Subject:  Re: PATCH: Add --size-check=[error|warning]
Date:  Mon, 14 Mar 2011 12:58:43 -0700
Message-ID:  <AANLkTim0SbUQ=snszAKRHXkCj_aTJr3GN12xTE1kuj5-@mail.gmail.com>
Cc:  "H. Peter Anvin" <hpa-AT-zytor.com>, Jan Beulich <JBeulich-AT-novell.com>, sedat.dilek-AT-gmail.com, Alan Modra <amodra-AT-bigpond.net.au>, Ingo Molnar <mingo-AT-elte.hu>, "H.J. Lu" <hjl.tools-AT-gmail.com>, Thomas Gleixner <tglx-AT-linutronix.de>, Andrew Morton <akpm-AT-linux-foundation.org>, binutils <binutils-AT-sourceware.org>, LKML <linux-kernel-AT-vger.kernel.org>
Archive-link:  Article, Thread

On Mon, Mar 14, 2011 at 12:24 PM, Steven Rostedt <rostedt@goodmis.org> wrote:
>
> If it was a bug in asm, but binutils can cope with it, then it should be
> a warning. If binutils can't cope, then error.

I think this is the really fundamental issue: anybody who makes a hard
error out of something that is recoverable is a total moron.

We have that in the kernel too - I've berated people for using
BUG_ON() _much_ too eagerly. If you make a hard error out of
something, that just makes things much much harder to handle, and is
just a big inconvenience for everybody. Why do it?

In the kernel, a hard error (like BUG_ON()) tends to result in a
system that is unusable and makes logging things harder. And in
development tools, a hard error just means that you stop _everybody_,
whether the user is a developer or just a tester who can't
realistically fix it (or a developer who is not involved in that
area). And even for developers who _are_ directly involved, a hard
error stops the build, instead of just letting it continue and help
him see if there are perhaps _other_ cases that should also be fixed.

So anybody who makes something a hard error when it's not required is
just being a STUPID. It hurts everybody. Don't do it.

                             Linus


(Log in to post comments)

Re: PATCH: Add --size-check=[error|warning]

Posted Mar 17, 2011 19:09 UTC (Thu) by ballombe (subscriber, #9523) [Link]

Compiler incompatibility is one of the reason that I require my projects to build with gcc-2.95. This way, all the GIT/SVN revisions can be built with a single compiler.

Re: PATCH: Add --size-check=[error|warning]

Posted Mar 18, 2011 10:41 UTC (Fri) by Cyberax (✭ supporter ✭, #52523) [Link]

Why not gcc-1.0.0?

Copyright © 2011, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds