x86 BUG bug

From: Jeff Garzik
Date: Sun Oct 01 2006 - 07:42:37 EST


I have a couple ATA drivers that spit out "foo might be used uninitialized" warnings. Rather than the usual gcc nonsense, it turns out that the code follows this pattern:

type_t foo;

if (condition 1)
foo = x;
else if (condition 2)
foo = y;
else
BUG();

It doesn't warn on other platforms, so I dug into the BUG() code on x86, and discovered that it is missing the 'noreturn' attribute found in other BUG() definitions.

Being rusty on the gcc asm syntax -- does an inline asm statement permit 'noreturn'? -- I figured it would be best just to report this, rather than create a patch myself.

Jeff


-
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/