Create a rate limited macro for durable_name_printk so that
we can use this for printk_ratelimited usage in the block
layers and add the durable name key/value to the log
message.
Signed-off-by: Tony Asleson <redacted>
---
include/linux/dev_printk.h | 9 +++++++++
1 file changed, 9 insertions(+)
diff --git a/include/linux/dev_printk.h b/include/linux/dev_printk.h
index 4d57b940b692..9fd675b9ac7c 100644
--- a/include/linux/dev_printk.h
+++ b/include/linux/dev_printk.h
@@ -37,6 +37,15 @@ __printf(3, 4) __cold
void durable_name_printk(const char *level, const struct device *dev,
const char *fmt, ...);
+#define durable_name_printk_ratelimited(level, dev, fmt, ...) \
+do { \
+ static DEFINE_RATELIMIT_STATE(_rs, \
+ DEFAULT_RATELIMIT_INTERVAL, \
+ DEFAULT_RATELIMIT_BURST); \
+ if (__ratelimit(&_rs)) \
+ durable_name_printk(level, dev, fmt, ##__VA_ARGS__); \
+} while (0)
+
__printf(2, 3) __cold
void _dev_emerg(const struct device *dev, const char *fmt, ...);
__printf(2, 3) __cold--
2.26.2