From 5baf5ae9bdc5538e44805e520068badf6f546958 Mon Sep 17 00:00:00 2001 From: Jean-Christophe PLAGNIOL-VILLARD Date: Sun, 29 Aug 2010 18:24:22 +0200 Subject: [PATCH] add WARN_ON and WARN support Signed-off-by: Jean-Christophe PLAGNIOL-VILLARD Signed-off-by: Sascha Hauer --- include/common.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/include/common.h b/include/common.h index 0edc77809..64f49db38 100644 --- a/include/common.h +++ b/include/common.h @@ -56,6 +56,31 @@ } while (0) #define BUG_ON(condition) do { if (unlikely((condition)!=0)) BUG(); } while(0) + +#define __WARN() do { \ + printf("WARNING: at %s:%d/%s()!\n", __FILE__, __LINE__, __FUNCTION__); \ +} while (0) + +#ifndef WARN_ON +#define WARN_ON(condition) ({ \ + int __ret_warn_on = !!(condition); \ + if (unlikely(__ret_warn_on)) \ + __WARN(); \ + unlikely(__ret_warn_on); \ +}) +#endif + +#ifndef WARN +#define WARN(condition, format...) ({ \ + int __ret_warn_on = !!(condition); \ + if (unlikely(__ret_warn_on)) \ + __WARN(); \ + puts("WARNING: "); \ + printf(format); \ + unlikely(__ret_warn_on); \ +}) +#endif + typedef void (interrupt_handler_t)(void *); #include /* boot information for Linux kernel */