From 4adf7ad09dfe7a92104f4d5b8688c294ece0ce9e Mon Sep 17 00:00:00 2001 From: Xiang Xiao Date: Sun, 4 Jul 2021 00:49:38 -0700 Subject: [PATCH] mm/tlsf: Register mem procfs in mm_initialize follow up this change: commit 268d66173dca1d41944742e45de0a15790228e36 Author: Xiang Xiao Date: Sat Jul 3 21:25:14 2021 +0800 mm: Move procfs_register_meminfo into common place to avoid the code duplication and ensure the consistent behaviour Signed-off-by: Xiang Xiao Change-Id: Ifd9f6ff67f0cb6de54d733f929474154830dc46b --- mm/tlsf/mm_tlsf.c | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/mm/tlsf/mm_tlsf.c b/mm/tlsf/mm_tlsf.c index a288353cddd..b6abe92c0a3 100644 --- a/mm/tlsf/mm_tlsf.c +++ b/mm/tlsf/mm_tlsf.c @@ -33,9 +33,9 @@ #include #include +#include #include #include -#include #include "tlsf/tlsf.h" @@ -92,6 +92,10 @@ struct mm_heap_impl_s #else struct mm_delaynode_s *mm_delaylist[1]; #endif + +#if defined(CONFIG_FS_PROCFS) && !defined(CONFIG_FS_PROCFS_EXCLUDE_MEMINFO) + struct procfs_meminfo_entry_s mm_procfs; +#endif }; /**************************************************************************** @@ -777,8 +781,8 @@ bool mm_heapmember(FAR struct mm_heap_s *heap, FAR void *mem) * ****************************************************************************/ -void mm_initialize(FAR struct mm_heap_s *heap, FAR void *heapstart, - size_t heapsize) +void mm_initialize(FAR struct mm_heap_s *heap, FAR const char *name, + FAR void *heapstart, size_t heapsize) { FAR struct mm_heap_impl_s *impl; @@ -812,6 +816,15 @@ void mm_initialize(FAR struct mm_heap_s *heap, FAR void *heapstart, /* Add the initial region of memory to the heap */ mm_addregion(heap, heapstart, heapsize); + +#if defined(CONFIG_FS_PROCFS) && !defined(CONFIG_FS_PROCFS_EXCLUDE_MEMINFO) +#if defined(CONFIG_BUILD_FLAT) || defined(__KERNEL__) + impl->mm_procfs.name = name; + impl->mm_procfs.mallinfo = (FAR void *)mm_mallinfo; + impl->mm_procfs.user_data = heap; + procfs_register_meminfo(&impl->mm_procfs); +#endif +#endif } /****************************************************************************