From dbdeaa2adabd0a67278003a35ae1fccbfa178866 Mon Sep 17 00:00:00 2001 From: fangpeina Date: Tue, 18 Jun 2024 18:03:15 +0800 Subject: [PATCH] libc/execinfo: extract a common backtrace format function Add a common method to format backtrace to buffer, so it can be used by both mm, fs and other possoble modules. Signed-off-by: fangpeina --- mm/mempool/mempool.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/mm/mempool/mempool.c b/mm/mempool/mempool.c index 1aa3596359..ef686014da 100644 --- a/mm/mempool/mempool.c +++ b/mm/mempool/mempool.c @@ -202,7 +202,7 @@ static void mempool_memdump_callback(FAR struct mempool_s *pool, MM_DUMP_LEAK(dump->pid, buf->pid)) && buf->seqno >= dump->seqmin && buf->seqno <= dump->seqmax) { - char tmp[CONFIG_MM_BACKTRACE * MM_PTR_FMT_WIDTH + 1] = ""; + char tmp[CONFIG_MM_BACKTRACE * BACKTRACE_PTR_FMT_WIDTH + 1] = ""; # if CONFIG_MM_BACKTRACE > 0 FAR const char *format = " %0*p"; @@ -211,16 +211,16 @@ static void mempool_memdump_callback(FAR struct mempool_s *pool, for (i = 0; i < CONFIG_MM_BACKTRACE && buf->backtrace[i]; i++) { - snprintf(tmp + i * MM_PTR_FMT_WIDTH, - sizeof(tmp) - i * MM_PTR_FMT_WIDTH, - format, MM_PTR_FMT_WIDTH - 1, + snprintf(tmp + i * BACKTRACE_PTR_FMT_WIDTH, + sizeof(tmp) - i * BACKTRACE_PTR_FMT_WIDTH, + format, BACKTRACE_PTR_FMT_WIDTH - 1, buf->backtrace[i]); } # endif syslog(LOG_INFO, "%6d%12zu%12lu%*p%s\n", buf->pid, blocksize, buf->seqno, - MM_PTR_FMT_WIDTH, + BACKTRACE_PTR_FMT_WIDTH, ((FAR char *)buf - pool->blocksize), tmp); } } @@ -235,7 +235,7 @@ mempool_memdump_free_callback(FAR struct mempool_s *pool, if (buf->magic == MEMPOOL_MAGIC_FREE) { syslog(LOG_INFO, "%12zu%*p\n", - blocksize, MM_PTR_FMT_WIDTH, + blocksize, BACKTRACE_PTR_FMT_WIDTH, ((FAR char *)buf - pool->blocksize)); } } @@ -601,7 +601,7 @@ void mempool_memdump(FAR struct mempool_s *pool, /* Avoid race condition */ syslog(LOG_INFO, "%12zu%*p skip block dump\n", - blocksize, MM_PTR_FMT_WIDTH, pool); + blocksize, BACKTRACE_PTR_FMT_WIDTH, pool); #endif }