Commit 36278a5d authored by Alain Michaud's avatar Alain Michaud Committed by Marcel Holtmann

Bluetooth: Adding a bt_dev_warn_ratelimited macro.

The macro will be used to display rate limited warning messages in the
log.
Signed-off-by: default avatarAlain Michaud <alainm@chromium.org>
Signed-off-by: default avatarMarcel Holtmann <marcel@holtmann.org>
parent 3c85efb8
...@@ -129,6 +129,8 @@ void bt_warn(const char *fmt, ...); ...@@ -129,6 +129,8 @@ void bt_warn(const char *fmt, ...);
__printf(1, 2) __printf(1, 2)
void bt_err(const char *fmt, ...); void bt_err(const char *fmt, ...);
__printf(1, 2) __printf(1, 2)
void bt_warn_ratelimited(const char *fmt, ...);
__printf(1, 2)
void bt_err_ratelimited(const char *fmt, ...); void bt_err_ratelimited(const char *fmt, ...);
#define BT_INFO(fmt, ...) bt_info(fmt "\n", ##__VA_ARGS__) #define BT_INFO(fmt, ...) bt_info(fmt "\n", ##__VA_ARGS__)
...@@ -147,6 +149,8 @@ void bt_err_ratelimited(const char *fmt, ...); ...@@ -147,6 +149,8 @@ void bt_err_ratelimited(const char *fmt, ...);
#define bt_dev_dbg(hdev, fmt, ...) \ #define bt_dev_dbg(hdev, fmt, ...) \
BT_DBG("%s: " fmt, (hdev)->name, ##__VA_ARGS__) BT_DBG("%s: " fmt, (hdev)->name, ##__VA_ARGS__)
#define bt_dev_warn_ratelimited(hdev, fmt, ...) \
bt_warn_ratelimited("%s: " fmt, (hdev)->name, ##__VA_ARGS__)
#define bt_dev_err_ratelimited(hdev, fmt, ...) \ #define bt_dev_err_ratelimited(hdev, fmt, ...) \
BT_ERR_RATELIMITED("%s: " fmt, (hdev)->name, ##__VA_ARGS__) BT_ERR_RATELIMITED("%s: " fmt, (hdev)->name, ##__VA_ARGS__)
......
...@@ -183,6 +183,22 @@ void bt_err(const char *format, ...) ...@@ -183,6 +183,22 @@ void bt_err(const char *format, ...)
} }
EXPORT_SYMBOL(bt_err); EXPORT_SYMBOL(bt_err);
void bt_warn_ratelimited(const char *format, ...)
{
struct va_format vaf;
va_list args;
va_start(args, format);
vaf.fmt = format;
vaf.va = &args;
pr_warn_ratelimited("%pV", &vaf);
va_end(args);
}
EXPORT_SYMBOL(bt_warn_ratelimited);
void bt_err_ratelimited(const char *format, ...) void bt_err_ratelimited(const char *format, ...)
{ {
struct va_format vaf; struct va_format vaf;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment