Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

ratelimit: add initialization macro

Signed-off-by: Dmitry Monakhov <dmonakhov@openvz.org>
Cc: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Dmitry Monakhov and committed by
Linus Torvalds
89e3f909 92cab82b

+9 -3
+9 -3
include/linux/ratelimit.h
··· 17 17 unsigned long begin; 18 18 }; 19 19 20 - #define DEFINE_RATELIMIT_STATE(name, interval_init, burst_init) \ 21 - \ 22 - struct ratelimit_state name = { \ 20 + #define RATELIMIT_STATE_INIT(name, interval_init, burst_init) { \ 23 21 .lock = __RAW_SPIN_LOCK_UNLOCKED(name.lock), \ 24 22 .interval = interval_init, \ 25 23 .burst = burst_init, \ 26 24 } 25 + 26 + #define RATELIMIT_STATE_INIT_DISABLED \ 27 + RATELIMIT_STATE_INIT(ratelimit_state, 0, DEFAULT_RATELIMIT_BURST) 28 + 29 + #define DEFINE_RATELIMIT_STATE(name, interval_init, burst_init) \ 30 + \ 31 + struct ratelimit_state name = \ 32 + RATELIMIT_STATE_INIT(name, interval_init, burst_init) \ 27 33 28 34 static inline void ratelimit_state_init(struct ratelimit_state *rs, 29 35 int interval, int burst)