42 lines · 858 B · C
RawDownload
#ifndef _ASM_GENERIC_BUG_H#define _ASM_GENERIC_BUG_H #include <linux/compiler.h>#include <linux/config.h> #ifdef CONFIG_BUG#ifndef HAVE_ARCH_BUG#define BUG() do { \	printk("kernel BUG at %s:%d!\n", __FILE__, __LINE__); \	panic("BUG!"); \} while (0)#endif #ifndef HAVE_ARCH_BUG_ON#define BUG_ON(condition) do { if (unlikely((condition)!=0)) BUG(); } while(0)#endif #ifndef HAVE_ARCH_WARN_ON#define WARN_ON(condition) do { \	if (unlikely((condition)!=0)) { \		printk("Badness in %s at %s:%d\n", __FUNCTION__, __FILE__, __LINE__); \		dump_stack(); \	} \} while (0)#endif #else /* !CONFIG_BUG */#ifndef HAVE_ARCH_BUG#define BUG()#endif #ifndef HAVE_ARCH_BUG_ON#define BUG_ON(condition) do { if (condition) ; } while(0)#endif #ifndef HAVE_ARCH_WARN_ON#define WARN_ON(condition) do { if (condition) ; } while(0)#endif#endif #endif