Re: early exception error

Jiri Slaby
2009-01-05T15:14:26Z

On 01/05/2009 04:01 PM, Cyrill Gorcunov wrote:
> [Jiri Slaby - Mon, Jan 05, 2009 at 03:51:26PM +0100]
> | On 01/05/2009 02:08 PM, Andi Kleen wrote:
> | > +#define EARLY_BUG_ON(x) do { if (unlikely(!(x))) EARLY_BUG(); } while (0)
> |
> | I think unintentionally inverted logic.
>
> just second ! is missed :)

None is needed, two '!' are added in the macro itself while it passes the
parameter to the builtin.

> |
> | > +#define EARLY_BUG_ON(x) do {} while(0)
> |
> | Shouldn't be x referenced here?
> |
>
> but for what?

I know, core devs are sane, but e.g. for reasons such as

{'a' is used here already}
EARLY_BUG_ON(!(a = readl(...)))
{use 'a' again}

to stay on the safe side.