Introduce __WARN() in the generic case, so the generic WARN_ON()
can use arch-specific code for when the condition is true.

Signed-off-by: Olof Johansson <olof@lixom.net>
Cc: <linux-arch@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
Olof Johansson 2008-01-30 13:32:50 +01:00 коммит произвёл Ingo Molnar
Родитель f315decbd0
Коммит 3a6a62f96f
1 изменённых файлов: 11 добавлений и 6 удалений

Просмотреть файл

@ -31,14 +31,19 @@ struct bug_entry {
#define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while(0) #define BUG_ON(condition) do { if (unlikely(condition)) BUG(); } while(0)
#endif #endif
#ifndef HAVE_ARCH_WARN_ON #ifndef __WARN
#define __WARN() do { \
printk("WARNING: at %s:%d %s()\n", __FILE__, \
__LINE__, __FUNCTION__); \
dump_stack(); \
} while (0)
#endif
#ifndef WARN_ON
#define WARN_ON(condition) ({ \ #define WARN_ON(condition) ({ \
int __ret_warn_on = !!(condition); \ int __ret_warn_on = !!(condition); \
if (unlikely(__ret_warn_on)) { \ if (unlikely(__ret_warn_on)) \
printk("WARNING: at %s:%d %s()\n", __FILE__, \ __WARN(); \
__LINE__, __FUNCTION__); \
dump_stack(); \
} \
unlikely(__ret_warn_on); \ unlikely(__ret_warn_on); \
}) })
#endif #endif