Re: [PATCH] [2/3] add WARN_ON_SECS macro

From: Marcin Slusarz
Date: Tue Mar 11 2008 - 15:21:44 EST


On Mon, Mar 10, 2008 at 02:34:37PM +0800, Dave Young wrote:
> Add WARN_ON_SECS macro for some serious case which need repeat the
> warnings, but with some ratelimit.
>
> Signed-off-by: Dave Young <hidave.darkstar@xxxxxxxxx>
>
> ---
> include/asm-generic/bug.h | 8 ++++++++
> 1 file changed, 8 insertions(+)
>
> diff -upr linux/include/asm-generic/bug.h linux.new/include/asm-generic/bug.h
> --- linux/include/asm-generic/bug.h 2008-03-10 13:27:03.000000000 +0800
> +++ linux.new/include/asm-generic/bug.h 2008-03-10 13:27:14.000000000 +0800
> @@ -3,6 +3,7 @@
>
> #include <linux/compiler.h>
>
> +
> #ifdef CONFIG_BUG
>
> #ifdef CONFIG_GENERIC_BUG
> @@ -75,6 +76,13 @@ extern void warn_on_slowpath(const char
> unlikely(__ret_warn_once); \
> })
>
> +#define WARN_ON_SECS(condition, secs) ({ \
> + int __ret_warn_on = !!(condition); \
> + if (unlikely(__ret_warn_on)) \
> + if (__ratelimit(secs * HZ, 1)) \
> + WARN_ON(condition); \
> +})
> +
> #ifdef CONFIG_SMP
> # define WARN_ON_SMP(x) WARN_ON(x)
> #else

Do you really want to check the condition twice?

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