diff options
Diffstat (limited to 'tools/include/asm/bug.h')
| -rw-r--r-- | tools/include/asm/bug.h | 25 | 
1 files changed, 25 insertions, 0 deletions
diff --git a/tools/include/asm/bug.h b/tools/include/asm/bug.h new file mode 100644 index 00000000000..9e5f4846967 --- /dev/null +++ b/tools/include/asm/bug.h @@ -0,0 +1,25 @@ +#ifndef _TOOLS_ASM_BUG_H +#define _TOOLS_ASM_BUG_H + +#include <linux/compiler.h> + +#define __WARN_printf(arg...)	do { fprintf(stderr, arg); } while (0) + +#define WARN(condition, format...) ({		\ +	int __ret_warn_on = !!(condition);	\ +	if (unlikely(__ret_warn_on))		\ +		__WARN_printf(format);		\ +	unlikely(__ret_warn_on);		\ +}) + +#define WARN_ONCE(condition, format...)	({	\ +	static int __warned;			\ +	int __ret_warn_once = !!(condition);	\ +						\ +	if (unlikely(__ret_warn_once))		\ +		if (WARN(!__warned, format)) 	\ +			__warned = 1;		\ +	unlikely(__ret_warn_once);		\ +}) + +#endif /* _TOOLS_ASM_BUG_H */  | 
