From: David Daney <ddaney@caviumnetworks.com>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: David Howells <dhowells@redhat.com>,
David Daney <ddaney.cavm@gmail.com>,
Andrew Morton <akpm@linux-foundation.org>,
"ralf@linux-mips.org" <ralf@linux-mips.org>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
"linux-arch@vger.kernel.org" <linux-arch@vger.kernel.org>,
David Rientjes <rientjes@google.com>, DM <dm.n9107@gmail.com>,
David Daney <david.daney@cavium.com>,
"Pinski, Andrew" <Andrew.Pinski@caviumnetworks.com>
Subject: Re: [PATCH v3 0/2] Stop some of the abuse of BUG() where compile time checks should be used.
Date: Mon, 28 Nov 2011 09:03:20 -0800 [thread overview]
Message-ID: <4ED3BED8.4000000@caviumnetworks.com> (raw)
In-Reply-To: <CA+55aFx9x7Q0urXJHk7g2Fxqot0J=9YxaWcdmduwy=sm0DOduA@mail.gmail.com>
On 11/24/2011 10:31 AM, Linus Torvalds wrote:
> On Thu, Nov 24, 2011 at 2:24 AM, David Howells<dhowells@redhat.com> wrote:
>>
>> Have you tried asking the gcc folks if this is likely to get fixed soon?
>
> I actually don't think it's a bug. The error message is associated
> with the function declaration symbol, so it actually makes sense that
> there can be only one error message per callee - not per caller.
>
Yes, that is correct.
> Using "__LINE__" to then create fairly unique symbols (modulo
> #include, of course) gets around it in a pretty natural way as ddaney
> said, so if we care enough. I don't think it's a big issue (as
> mentioned, I'd worry more about us making sure it's reliable enough to
> be used - we've had gcc sometimes fail to compile things out just
> because some optimization was not working well enough).
>
Since these are *build* bugs, they are of a different nature than the
*runtime* variety. They will never be seen at random times by someone
running the kernel, so making it easier to determine their cause is less
important. Really, I would expect it to never really be an issue.
We will always know which file is the culprit. Finding the line number
can be done like this:
objdump -r $file | grep build_bug | addr2line -e $file
David Daney
prev parent reply other threads:[~2011-11-28 17:03 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-11-23 23:46 [PATCH v3 0/2] Stop some of the abuse of BUG() where compile time checks should be used David Daney
2011-11-23 23:46 ` David Daney
2011-11-23 23:46 ` [PATCH v3 1/2] kernel.h: Add BUILD_BUG() macro David Daney
2012-01-17 5:52 ` [PATCH] mips: remove custom BUILD_BUG() Eric Dumazet
2012-01-17 8:28 ` Ralf Baechle
2012-01-17 8:34 ` Eric Dumazet
2011-11-23 23:46 ` [PATCH v3 2/2] hugetlb: Replace BUG() with BUILD_BUG() for dummy definitions David Daney
2011-11-23 23:57 ` [PATCH v3 0/2] Stop some of the abuse of BUG() where compile time checks should be used Linus Torvalds
2011-11-24 0:37 ` David Daney
2011-11-24 10:24 ` David Howells
2011-11-24 18:31 ` Linus Torvalds
2011-11-28 17:03 ` David Daney [this message]
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 \
--in-reply-to=4ED3BED8.4000000@caviumnetworks.com \
--to=ddaney@caviumnetworks.com \
--cc=Andrew.Pinski@caviumnetworks.com \
--cc=akpm@linux-foundation.org \
--cc=david.daney@cavium.com \
--cc=ddaney.cavm@gmail.com \
--cc=dhowells@redhat.com \
--cc=dm.n9107@gmail.com \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=ralf@linux-mips.org \
--cc=rientjes@google.com \
--cc=torvalds@linux-foundation.org \
/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
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.