From bb7466fc68a30a0b96a679654de056d7cf6763db Mon Sep 17 00:00:00 2001 From: Yuxuan Shui Date: Wed, 13 Feb 2019 04:11:41 +0000 Subject: [PATCH] trace/debug logs are unlikely Signed-off-by: Yuxuan Shui --- src/log.h | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/log.h b/src/log.h index d2e80a6..fb1b81d 100644 --- a/src/log.h +++ b/src/log.h @@ -17,14 +17,21 @@ enum log_level { LOG_LEVEL_FATAL, }; +#define LOG_UNLIKELY(level, x, ...) \ + do { \ + if (unlikely(LOG_LEVEL_##level >= log_get_level_tls())) { \ + log_printf(tls_logger, LOG_LEVEL_##level, __func__, x, ##__VA_ARGS__); \ + } \ + } while (0) + #define LOG(level, x, ...) \ do { \ if (LOG_LEVEL_##level >= log_get_level_tls()) { \ log_printf(tls_logger, LOG_LEVEL_##level, __func__, x, ##__VA_ARGS__); \ } \ } while (0) -#define log_trace(x, ...) LOG(TRACE, x, ##__VA_ARGS__) -#define log_debug(x, ...) LOG(DEBUG, x, ##__VA_ARGS__) +#define log_trace(x, ...) LOG_UNLIKELY(TRACE, x, ##__VA_ARGS__) +#define log_debug(x, ...) LOG_UNLIKELY(DEBUG, x, ##__VA_ARGS__) #define log_info(x, ...) LOG(INFO, x, ##__VA_ARGS__) #define log_warn(x, ...) LOG(WARN, x, ##__VA_ARGS__) #define log_error(x, ...) LOG(ERROR, x, ##__VA_ARGS__)