From 78bf8ebf757e39e1ab23d6504f54209eb52056ed Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Krzysztof=20Chru=C5=9Bci=C5=84ski?= Date: Thu, 26 Oct 2023 09:29:34 +0200 Subject: [PATCH] logging: Allow keeping module names in dedicated section MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When CONFIG_LOG_FMT_SECTION is enabled then module name strings are also placed in the dedicated section used for all logging strings. Signed-off-by: Krzysztof Chruściński --- include/zephyr/logging/log.h | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/include/zephyr/logging/log.h b/include/zephyr/logging/log.h index e6db645c742b9e..d04f5b1ab82776 100644 --- a/include/zephyr/logging/log.h +++ b/include/zephyr/logging/log.h @@ -298,14 +298,19 @@ void z_log_vprintk(const char *fmt, va_list ap); /* Return first argument */ #define _LOG_ARG1(arg1, ...) arg1 -#define _LOG_MODULE_CONST_DATA_CREATE(_name, _level) \ - IF_ENABLED(LOG_IN_CPLUSPLUS, (extern)) \ - const STRUCT_SECTION_ITERABLE_ALTERNATE(log_const, \ - log_source_const_data, \ - Z_LOG_ITEM_CONST_DATA(_name)) = \ - { \ - .name = STRINGIFY(_name), \ - .level = _level \ +#define _LOG_MODULE_CONST_DATA_CREATE(_name, _level) \ + IF_ENABLED(CONFIG_LOG_FMT_SECTION, ( \ + static const char UTIL_CAT(_name, _str)[] \ + __in_section(_log_strings, static, _CONCAT(_name, _)) __used __noasan = \ + STRINGIFY(_name);)) \ + IF_ENABLED(LOG_IN_CPLUSPLUS, (extern)) \ + const STRUCT_SECTION_ITERABLE_ALTERNATE(log_const, \ + log_source_const_data, \ + Z_LOG_ITEM_CONST_DATA(_name)) = \ + { \ + .name = COND_CODE_1(CONFIG_LOG_FMT_SECTION, \ + (UTIL_CAT(_name, _str)), (STRINGIFY(_name))), \ + .level = _level \ } #define _LOG_MODULE_DYNAMIC_DATA_CREATE(_name) \