diff options
Diffstat (limited to 'include/asm-generic/bug.h')
| -rw-r--r-- | include/asm-generic/bug.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/asm-generic/bug.h b/include/asm-generic/bug.h index a3f738cffdb6..edc6ba82e090 100644 --- a/include/asm-generic/bug.h +++ b/include/asm-generic/bug.h | |||
| @@ -97,6 +97,16 @@ extern void warn_slowpath(const char *file, const int line, | |||
| 97 | unlikely(__ret_warn_once); \ | 97 | unlikely(__ret_warn_once); \ |
| 98 | }) | 98 | }) |
| 99 | 99 | ||
| 100 | #define WARN_ONCE(condition, format...) ({ \ | ||
| 101 | static int __warned; \ | ||
| 102 | int __ret_warn_once = !!(condition); \ | ||
| 103 | \ | ||
| 104 | if (unlikely(__ret_warn_once)) \ | ||
| 105 | if (WARN(!__warned, format)) \ | ||
| 106 | __warned = 1; \ | ||
| 107 | unlikely(__ret_warn_once); \ | ||
| 108 | }) | ||
| 109 | |||
| 100 | #define WARN_ON_RATELIMIT(condition, state) \ | 110 | #define WARN_ON_RATELIMIT(condition, state) \ |
| 101 | WARN_ON((condition) && __ratelimit(state)) | 111 | WARN_ON((condition) && __ratelimit(state)) |
| 102 | 112 | ||
