linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] ratelimit: check the condition in WARN_RATELIMIT first
@ 2012-08-17 13:42 Jiri Slaby
  2012-08-17 17:39 ` Joe Perches
  0 siblings, 1 reply; 5+ messages in thread
From: Jiri Slaby @ 2012-08-17 13:42 UTC (permalink / raw)
  To: davem; +Cc: jirislaby, linux-kernel, Jiri Slaby, Joe Perches

Before calling __ratelimit in __WARN_RATELIMIT, check the condition
first. When this check was not there, we got constant income of:
tty_init_dev: 60 callbacks suppressed
tty_init_dev: 59 callbacks suppressed

Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Cc: Joe Perches <joe@perches.com>
---
 include/linux/ratelimit.h | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/include/linux/ratelimit.h b/include/linux/ratelimit.h
index e11ccb4..966d35c 100644
--- a/include/linux/ratelimit.h
+++ b/include/linux/ratelimit.h
@@ -49,8 +49,9 @@ extern int ___ratelimit(struct ratelimit_state *rs, const char *func);
 #define __WARN_RATELIMIT(condition, state, format...)		\
 ({								\
 	int rtn = 0;						\
-	if (unlikely(__ratelimit(state)))			\
-		rtn = WARN(condition, format);			\
+	int __rtcond = !!condition;				\
+	if (unlikely(__rtcond && __ratelimit(state)))		\
+		rtn = WARN(__rtcond, format);			\
 	rtn;							\
 })
 
-- 
1.7.11.5



^ permalink raw reply related	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2012-08-17 20:54 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-08-17 13:42 [PATCH] ratelimit: check the condition in WARN_RATELIMIT first Jiri Slaby
2012-08-17 17:39 ` Joe Perches
2012-08-17 18:15   ` Jiri Slaby
2012-08-17 18:45     ` Joe Perches
2012-08-17 20:54       ` Jiri Slaby

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).