Prev: [PATCH 1/2] perf tui: Make <- exit menus too
Next: [PATCH] led-class: set permissions on max_brightness file to 0444
From: OGAWA Hirofumi on 16 May 2010 20:40 Hi, Please review. Andrew, this is the part of fatfs error ratelimit. I.e. fatfs change is depending to this patch. I guess this area usually is sent to you. But, if this patch wasn't applied before fatfs change, fatfs will break. Well, so, can I pass fatfs patch to you? Or, I should apply this to fatfs-tree too? Thanks. -- OGAWA Hirofumi <hirofumi(a)mail.parknet.co.jp> For now, all users of ratelimit_state allocates it statically, so DEFINE_RATELIMIT_STATE() is enough. But, I want to use ratelimit_state for fs, i.e. per super_block to suppress too many error reports. So, this adds ratelimit_state_init() to initialize ratelimite_state which is dynamically allocated, instead of opencoding. Signed-off-by: OGAWA Hirofumi <hirofumi(a)mail.parknet.co.jp> --- include/linux/ratelimit.h | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff -puN include/linux/ratelimit.h~ratelimit-enhance include/linux/ratelimit.h --- linux-2.6/include/linux/ratelimit.h~ratelimit-enhance 2010-05-17 03:44:27.000000000 +0900 +++ linux-2.6-hirofumi/include/linux/ratelimit.h 2010-05-17 03:44:27.000000000 +0900 @@ -2,7 +2,7 @@ #define _LINUX_RATELIMIT_H #include <linux/param.h> -#include <linux/spinlock_types.h> +#include <linux/spinlock.h> #define DEFAULT_RATELIMIT_INTERVAL (5 * HZ) #define DEFAULT_RATELIMIT_BURST 10 @@ -25,6 +25,17 @@ struct ratelimit_state { .burst = burst_init, \ } +static inline void ratelimit_state_init(struct ratelimit_state *rs, + int interval, int burst) +{ + spin_lock_init(&rs->lock); + rs->interval = interval; + rs->burst = burst; + rs->printed = 0; + rs->missed = 0; + rs->begin = 0; +} + extern int ___ratelimit(struct ratelimit_state *rs, const char *func); #define __ratelimit(state) ___ratelimit(state, __func__) _ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo(a)vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/ |