Re: [patch] warn-on-once.patch

From: Michal Schmidt
Date: Sat Nov 26 2005 - 10:04:17 EST


On Sat 26. of November 2005 15:52 Ingo Molnar wrote:
> - introduce WARN_ON_ONCE(cond)
> [...]
> +#define WARN_ON_ONCE(condition) \
> +do { \
> + static int warn_once = 1; \
> + \
> + if (condition) { \
> + warn_once = 0; \
> + WARN_ON(1); \
> + } \
> +} while (0);
> +
> #endif

That can't be right. The variable warn_once is only written to. Should the
condition be: if (condition && warn_once) ?
Or even better with inverted logic (so that the variable is initialized to 0):

static int warned_once;
if (condition && !warned_once) {
warned_once = 1;
WARN_ON(1);
}


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