|
@@ -46,20 +46,17 @@ extern int ___ratelimit(struct ratelimit_state *rs, const char *func);
|
|
|
#define WARN_ON_RATELIMIT(condition, state) \
|
|
|
WARN_ON((condition) && __ratelimit(state))
|
|
|
|
|
|
-#define __WARN_RATELIMIT(condition, state, format...) \
|
|
|
-({ \
|
|
|
- int rtn = 0; \
|
|
|
- if (unlikely(__ratelimit(state))) \
|
|
|
- rtn = WARN(condition, format); \
|
|
|
- rtn; \
|
|
|
-})
|
|
|
-
|
|
|
-#define WARN_RATELIMIT(condition, format...) \
|
|
|
+#define WARN_RATELIMIT(condition, format, ...) \
|
|
|
({ \
|
|
|
static DEFINE_RATELIMIT_STATE(_rs, \
|
|
|
DEFAULT_RATELIMIT_INTERVAL, \
|
|
|
DEFAULT_RATELIMIT_BURST); \
|
|
|
- __WARN_RATELIMIT(condition, &_rs, format); \
|
|
|
+ int rtn = !!(condition); \
|
|
|
+ \
|
|
|
+ if (unlikely(rtn && __ratelimit(&_rs))) \
|
|
|
+ WARN(rtn, format, ##__VA_ARGS__); \
|
|
|
+ \
|
|
|
+ rtn; \
|
|
|
})
|
|
|
|
|
|
#else
|
|
@@ -67,15 +64,9 @@ extern int ___ratelimit(struct ratelimit_state *rs, const char *func);
|
|
|
#define WARN_ON_RATELIMIT(condition, state) \
|
|
|
WARN_ON(condition)
|
|
|
|
|
|
-#define __WARN_RATELIMIT(condition, state, format...) \
|
|
|
-({ \
|
|
|
- int rtn = WARN(condition, format); \
|
|
|
- rtn; \
|
|
|
-})
|
|
|
-
|
|
|
-#define WARN_RATELIMIT(condition, format...) \
|
|
|
+#define WARN_RATELIMIT(condition, format, ...) \
|
|
|
({ \
|
|
|
- int rtn = WARN(condition, format); \
|
|
|
+ int rtn = WARN(condition, format, ##__VA_ARGS__); \
|
|
|
rtn; \
|
|
|
})
|
|
|
|