[patch 27/60] remove warnings with functions ending in BUG

From: Martin Schwidefsky
Date: Thu Nov 27 2008 - 05:41:50 EST


From: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>

Functions which end in a BUG() statement and skip the return statement
cause compile warnings on s390, e.g.:

mm/bootmem.c: In function 'mark_bootmem':
mm/bootmem.c:321: warning: control reaches end of non-void function

To avoid the warning add an endless loop to the BUG() macro.

Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
---

arch/s390/include/asm/bug.h | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

Index: quilt-2.6/arch/s390/include/asm/bug.h
===================================================================
--- quilt-2.6.orig/arch/s390/include/asm/bug.h
+++ quilt-2.6/arch/s390/include/asm/bug.h
@@ -47,7 +47,10 @@

#endif /* CONFIG_DEBUG_BUGVERBOSE */

-#define BUG() __EMIT_BUG(0)
+#define BUG() do { \
+ __EMIT_BUG(0); \
+ for (;;); \
+} while (0)

#define WARN_ON(x) ({ \
int __ret_warn_on = !!(x); \

--
blue skies,
Martin.

"Reality continues to ruin my life." - Calvin.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/