Date: Mon, 13 Aug 2012 22:56:22 +0200 From: Luigi Rizzo <rizzo@iet.unipi.it> To: current@freebsd.org Subject: rate-limited [kernel] debugging messages ? Message-ID: <20120813205622.GA85732@onelab2.iet.unipi.it>
next in thread | raw e-mail | index | archive | help
In my kernel stuff i tend to define debugging macros of the form #define ND(format, ...) do {} while (0) #define D(format, ...) do { <some useful stuff> } while (0) so it is convenient to comment them out when not needed anymore. I have recently tried the following rate-limited version, where the first parameter indicates how many lines per second are output at most /* rate limited, lps indicates how many per second */ #define RD(lps, format, ...) \ do { \ static int t0, cnt; \ if (t0 != time_second) { \ t0 = time_second; \ cnt = 0; \ } \ if (cnt++ < lps) \ D(format, ##__VA_ARGS__); \ } while (0) I was wondering if people have better suggestions or perhaps there are already similar macros used by other parts of the kernel. cheers luigi
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20120813205622.GA85732>