From: Jeremy Fitzhardinge <jeremy@goop.org>
To: Al Viro <viro@ftp.linux.org.uk>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org
Subject: Re: [PATCH][RFC] getting rid of stupid loop in BUG()
Date: Tue, 24 Jul 2007 14:14:57 -0700 [thread overview]
Message-ID: <46A66BD1.9020802@goop.org> (raw)
In-Reply-To: <20070724200401.GU21668@ftp.linux.org.uk>
Al Viro wrote:
> On Tue, Jul 24, 2007 at 12:13:19PM -0700, Jeremy Fitzhardinge wrote:
>
>> Al Viro wrote:
>>
>>> Works here...
>>>
>>>
>> Hm, doesn't here:
>>
>> CC arch/i386/kernel/irq.o
>> /home/jeremy/hg/xen/paravirt/linux/arch/i386/kernel/irq.c: In function '__BUG':
>> include2/asm/bug.h:29: warning: 'noreturn' function does return
>>
>> This is with current FC7 distro gcc: gcc version 4.1.2 20070502 (Red Hat
>> 4.1.2-12)
>>
>
> Interesting... Looks like it's both version- and flags-dependent.
> Oh, well...
>
> BTW, alpha, frv, m68k and s390 have BUG() that is not recognized as
> noreturn by gcc.
>
Yes, it was something I added because I thought it would be useful.
Traditionally, BUG has not affected gcc's control flow analysis.
The other option is trying to use __builtin_trap, which happens to
generate ud2a on i386. But I don't think its necessarily guaranteed to
always do that, and I don't know if it does anything useful for other
architectures.
J
next prev parent reply other threads:[~2007-07-24 21:16 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-24 15:39 [PATCH][RFC] getting rid of stupid loop in BUG() Al Viro
2007-07-24 16:56 ` Jeremy Fitzhardinge
2007-07-24 17:03 ` H. Peter Anvin
2007-07-24 17:14 ` Al Viro
2007-07-24 17:28 ` H. Peter Anvin
2007-07-24 18:58 ` Jeremy Fitzhardinge
2007-07-24 19:01 ` H. Peter Anvin
2007-07-24 19:13 ` Jeremy Fitzhardinge
2007-07-24 20:04 ` Al Viro
2007-07-24 21:14 ` Jeremy Fitzhardinge [this message]
2007-07-25 2:31 ` Trent Piepho
2007-07-25 2:50 ` Keith Owens
2007-07-25 5:09 ` H. Peter Anvin
2007-07-25 6:24 ` Jeremy Fitzhardinge
2007-07-25 6:29 ` David Miller
2007-07-25 6:50 ` Heiko Carstens
2007-07-25 16:56 ` Linus Torvalds
2007-07-25 17:00 ` Jeremy Fitzhardinge
2007-07-25 17:03 ` H. Peter Anvin
2007-07-25 17:19 ` Linus Torvalds
2007-07-25 17:25 ` Al Viro
2007-07-25 17:36 ` Jeremy Fitzhardinge
2007-07-25 19:35 ` David Miller
2007-07-25 20:26 ` H. Peter Anvin
2007-07-25 19:28 ` David Miller
2007-07-25 17:19 ` Al Viro
2007-07-25 17:22 ` H. Peter Anvin
2007-07-25 17:26 ` Al Viro
2007-07-25 17:35 ` David Howells
2007-07-25 17:41 ` Jeremy Fitzhardinge
2007-07-25 20:29 ` Chuck Ebbert
2007-07-25 20:37 ` H. Peter Anvin
2007-07-25 22:01 ` David Miller
2007-07-25 18:24 ` Linus Torvalds
2007-07-25 17:36 ` Al Viro
2007-07-25 17:44 ` Jeremy Fitzhardinge
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=46A66BD1.9020802@goop.org \
--to=jeremy@goop.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
--cc=viro@ftp.linux.org.uk \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox