From cd4e7893ea4d01b99e3182d1ef07ef870a6b6bea Mon Sep 17 00:00:00 2001 From: Nicolas Pitre Date: Sun, 4 Aug 2019 22:33:05 -0400 Subject: [PATCH] LOG_BACKEND_DEFINE(): use Z_STRUCT_SECTION_ITERABLE() Replace the open coded section attribute by Z_STRUCT_SECTION_ITERABLE() to properly align structure instances on 64-bit targets. Signed-off-by: Nicolas Pitre --- include/linker/common-rom.ld | 2 +- include/logging/log_backend.h | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/include/linker/common-rom.ld b/include/linker/common-rom.ld index f96d328719c..f1e4db54703 100644 --- a/include/linker/common-rom.ld +++ b/include/linker/common-rom.ld @@ -143,7 +143,7 @@ SECTION_DATA_PROLOGUE(log_backends_sections,,) { __log_backends_start = .; - KEEP(*(".log_backends")); + KEEP(*("._log_backend.*")); __log_backends_end = .; } GROUP_LINK_IN(ROMABLE_REGION) diff --git a/include/logging/log_backend.h b/include/logging/log_backend.h index 3a918f47009..9ecb3701a49 100644 --- a/include/logging/log_backend.h +++ b/include/logging/log_backend.h @@ -78,8 +78,7 @@ extern const struct log_backend __log_backends_end[0]; .active = false, \ .id = 0, \ }; \ - static const struct log_backend _name \ - __attribute__ ((section(".log_backends"))) __attribute__((used)) = \ + static const Z_STRUCT_SECTION_ITERABLE(log_backend, _name) = \ { \ .api = &_api, \ .cb = &UTIL_CAT(backend_cb_, _name), \