瀏覽代碼

core: mem/shm - api to get per module use/free stats

Stefan Mititelu 10 年之前
父節點
當前提交
bee6a69614
共有 2 個文件被更改,包括 11 次插入6 次删除
  1. 2 0
      mem/shm.c
  2. 9 6
      mem/shm.h

+ 2 - 0
mem/shm.c

@@ -221,6 +221,8 @@ int shm_init_api(sr_shm_api_t *ap)
 	_shm_root.xavailable     = ap->xavailable;
 	_shm_root.xsums          = ap->xsums;
 	_shm_root.xdestroy       = ap->xdestroy;
+	_shm_root.xstats         = ap->xstats;
+	_shm_root.xfstats        = ap->xfstats;
 	return 0;
 
 }

+ 9 - 6
mem/shm.h

@@ -49,17 +49,17 @@ extern sr_shm_api_t _shm_root;
 #ifdef DBG_SR_MEMORY
 
 #	define shm_malloc(s)         _shm_root.xmalloc(_shm_root.mem_block, (s), _SRC_LOC_, \
-									_SRC_FUNCTION_, _SRC_LINE_)
+									_SRC_FUNCTION_, _SRC_LINE_, _SRC_MODULE_)
 #	define shm_malloc_unsafe(s)  _shm_root.xmalloc_unsafe(_shm_root.mem_block, (s), _SRC_LOC_, \
-									_SRC_FUNCTION_, _SRC_LINE_)
+									_SRC_FUNCTION_, _SRC_LINE_, _SRC_MODULE_)
 #	define shm_realloc(p, s)     _shm_root.xrealloc(_shm_root.mem_block, (p), (s), \
-									_SRC_LOC_, _SRC_FUNCTION_, _SRC_LINE_)
+									_SRC_LOC_, _SRC_FUNCTION_, _SRC_LINE_, _SRC_MODULE_)
 #	define shm_resize(p, s)      _shm_root.xresize(_shm_root.mem_block, (p), (s), \
-									_SRC_LOC_, _SRC_FUNCTION_, _SRC_LINE_)
+									_SRC_LOC_, _SRC_FUNCTION_, _SRC_LINE_, _SRC_MODULE_)
 #	define shm_free(p)           _shm_root.xfree(_shm_root.mem_block, (p), _SRC_LOC_, \
-									_SRC_FUNCTION_, _SRC_LINE_)
+									_SRC_FUNCTION_, _SRC_LINE_, _SRC_MODULE_)
 #	define shm_free_unsafe(p)    _shm_root.xfree_unsafe(_shm_root.mem_block, (p), _SRC_LOC_, \
-									_SRC_FUNCTION_, _SRC_LINE_)
+									_SRC_FUNCTION_, _SRC_LINE_, _SRC_MODULE_)
 #else
 #	define shm_malloc(s)         _shm_root.xmalloc(_shm_root.mem_block, (s))
 #	define shm_malloc_unsafe(s)  _shm_root.xmalloc_unsafe(_shm_root.mem_block, (s))
@@ -73,6 +73,9 @@ extern sr_shm_api_t _shm_root;
 #	define shm_info(mi)    _shm_root.xinfo(_shm_root.mem_block, mi)
 #	define shm_available() _shm_root.xavailable(_shm_root.mem_block)
 #	define shm_sums()      _shm_root.xsums(_shm_root.mem_block)
+#	define shm_mod_get_stats(x)     _shm_root.xstats(_shm_root.mem_block, x)
+#	define shm_mod_free_stats(x)    _shm_root.xfstats(x)
+
 
 void* shm_core_get_pool(void);
 int shm_init_api(sr_shm_api_t *ap);