diff options
author | Sascha Hauer <s.hauer@pengutronix.de> | 2015-02-04 19:09:15 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2015-02-04 19:09:15 +0100 |
commit | 91d4a4264bc2dead4e3101c5064da35c78f4c89b (patch) | |
tree | 365f13d0cf1d0d5b52fdf3f95f32931874f88810 /include/asm-generic/bug.h | |
parent | 5b22e89c5629b944761f17ee07fba48f40342cff (diff) | |
parent | 41be004e8de52ae64264763278efeb7581be1e53 (diff) | |
download | barebox-91d4a4264bc2dead4e3101c5064da35c78f4c89b.tar.gz barebox-91d4a4264bc2dead4e3101c5064da35c78f4c89b.tar.xz |
Merge branch 'for-next/minmax'
Diffstat (limited to 'include/asm-generic/bug.h')
-rw-r--r-- | include/asm-generic/bug.h | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/include/asm-generic/bug.h b/include/asm-generic/bug.h new file mode 100644 index 0000000000..8583d2425f --- /dev/null +++ b/include/asm-generic/bug.h @@ -0,0 +1,37 @@ +#ifndef _ASM_GENERIC_BUG_H +#define _ASM_GENERIC_BUG_H + +#include <linux/compiler.h> + +#define BUG() do { \ + printf("BUG: failure at %s:%d/%s()!\n", __FILE__, __LINE__, __FUNCTION__); \ + panic("BUG!"); \ +} 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 +#endif |