From 4ce5b8104a1f09c41c69d17f21d9aac567173312 Mon Sep 17 00:00:00 2001 From: Simon Glass Date: Fri, 26 Mar 2021 16:17:28 +1300 Subject: [PATCH] log: Fix up debug_cond() when LOG is enabled At present debug() statements can cause debuf output to appear when LOG is enabled but DEBUG is not. This is not intended and it seems that the condition is wrong. Fix it. Signed-off-by: Simon Glass --- include/log.h | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/include/log.h b/include/log.h index 6ef891d4d2..add3a1e4a0 100644 --- a/include/log.h +++ b/include/log.h @@ -222,11 +222,14 @@ static inline int _log_nop(enum log_category_t cat, enum log_level_t level, #define _SPL_BUILD 0 #endif -#if !_DEBUG && CONFIG_IS_ENABLED(LOG) +#if CONFIG_IS_ENABLED(LOG) -#define debug_cond(cond, fmt, args...) \ -({ \ - log(LOG_CATEGORY, LOGL_DEBUG, fmt, ##args); \ +#define debug_cond(cond, fmt, args...) \ +({ \ + if (cond) \ + log(LOG_CATEGORY, \ + (enum log_level_t)(LOGL_FORCE_DEBUG | _LOG_DEBUG), \ + fmt, ##args); \ }) #else /* _DEBUG */