|
@@ -17,14 +17,20 @@ struct ratelimit_state {
|
|
|
unsigned long begin;
|
|
|
};
|
|
|
|
|
|
-#define DEFINE_RATELIMIT_STATE(name, interval_init, burst_init) \
|
|
|
- \
|
|
|
- struct ratelimit_state name = { \
|
|
|
+#define RATELIMIT_STATE_INIT(name, interval_init, burst_init) { \
|
|
|
.lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \
|
|
|
.interval = interval_init, \
|
|
|
.burst = burst_init, \
|
|
|
}
|
|
|
|
|
|
+#define RATELIMIT_STATE_INIT_DISABLED \
|
|
|
+ RATELIMIT_STATE_INIT(ratelimit_state, 0, DEFAULT_RATELIMIT_BURST)
|
|
|
+
|
|
|
+#define DEFINE_RATELIMIT_STATE(name, interval_init, burst_init) \
|
|
|
+ \
|
|
|
+ struct ratelimit_state name = \
|
|
|
+ RATELIMIT_STATE_INIT(name, interval_init, burst_init) \
|
|
|
+
|
|
|
static inline void ratelimit_state_init(struct ratelimit_state *rs,
|
|
|
int interval, int burst)
|
|
|
{
|