Add support for printk_ratelimit() function macro and improve the existing

printk_ratelimited() function macro to return a boolean stating if there
was a printout, true, or not, false.

MFC after:	1 week
Submitted by:	Johannes Lundberg <johalun0@gmail.com>
Sponsored by:	Mellanox Technologies
This commit is contained in:
hselasky 2018-02-17 21:25:19 +00:00
parent 0f5155e5e4
commit 9709dc1e99

View File

@ -106,10 +106,16 @@ print_hex_dump_bytes(const char *prefix_str, const int prefix_type,
print_hex_dump(NULL, prefix_str, prefix_type, 16, 1, buf, len, 0);
}
#define printk_ratelimited(...) do { \
#define printk_ratelimit() ({ \
static linux_ratelimit_t __ratelimited; \
if (linux_ratelimited(&__ratelimited)) \
linux_ratelimited(&__ratelimited); \
})
#define printk_ratelimited(...) ({ \
bool __retval = printk_ratelimit(); \
if (__retval) \
printk(__VA_ARGS__); \
} while (0)
__retval; \
})
#endif /* _LINUX_PRINTK_H_ */