diff options
Diffstat (limited to 'include/linux/mmdebug.h')
| -rw-r--r-- | include/linux/mmdebug.h | 15 | 
1 files changed, 13 insertions, 2 deletions
diff --git a/include/linux/mmdebug.h b/include/linux/mmdebug.h index 2d57efa64cc1..edd82a105220 100644 --- a/include/linux/mmdebug.h +++ b/include/linux/mmdebug.h @@ -1,6 +1,8 @@  #ifndef LINUX_MM_DEBUG_H  #define LINUX_MM_DEBUG_H 1 +#include <linux/stringify.h> +  struct page;  extern void dump_page(struct page *page, const char *reason); @@ -9,11 +11,20 @@ extern void dump_page_badflags(struct page *page, const char *reason,  #ifdef CONFIG_DEBUG_VM  #define VM_BUG_ON(cond) BUG_ON(cond) -#define VM_BUG_ON_PAGE(cond, page) \ -	do { if (unlikely(cond)) { dump_page(page, NULL); BUG(); } } while (0) +#define VM_BUG_ON_PAGE(cond, page)					\ +	do {								\ +		if (unlikely(cond)) {					\ +			dump_page(page, "VM_BUG_ON_PAGE(" __stringify(cond)")");\ +			BUG();						\ +		}							\ +	} while (0) +#define VM_WARN_ON(cond) WARN_ON(cond) +#define VM_WARN_ON_ONCE(cond) WARN_ON_ONCE(cond)  #else  #define VM_BUG_ON(cond) BUILD_BUG_ON_INVALID(cond)  #define VM_BUG_ON_PAGE(cond, page) VM_BUG_ON(cond) +#define VM_WARN_ON(cond) BUILD_BUG_ON_INVALID(cond) +#define VM_WARN_ON_ONCE(cond) BUILD_BUG_ON_INVALID(cond)  #endif  #ifdef CONFIG_DEBUG_VIRTUAL  |