X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/ea39fd08c260e7faa92334952d4acd37e3892b6c..e4abd3f271729beeff499da36267bfb274dd1f6d:/src/xbt/mmalloc/mm_module.c diff --git a/src/xbt/mmalloc/mm_module.c b/src/xbt/mmalloc/mm_module.c index 06f6266191..de1942a764 100644 --- a/src/xbt/mmalloc/mm_module.c +++ b/src/xbt/mmalloc/mm_module.c @@ -321,7 +321,9 @@ void *mmalloc_preinit(void) void *addr = (void*)(((unsigned long)sbrk(0) + HEAP_OFFSET) & mask); __mmalloc_default_mdp = xbt_mheap_new(-1, addr); /* Fixme? only the default mdp in protected against forks */ - res = xbt_os_thread_atfork(mmalloc_fork_prepare, //FIXME: KILLME when things settle a bit + // This is mandated to protect the mmalloced areas through forks. Think of tesh. + // Nah, removing the mutex isn't a good idea either for tesh + res = xbt_os_thread_atfork(mmalloc_fork_prepare, mmalloc_fork_parent, mmalloc_fork_child); if (res != 0) THROWF(system_error,0,"xbt_os_thread_atfork() failed: return value %d",res); @@ -337,3 +339,7 @@ void mmalloc_postexit(void) // mmalloc_detach(__mmalloc_default_mdp); xbt_mheap_destroy_no_free(__mmalloc_default_mdp); } + +size_t mmalloc_get_chunks_used(xbt_mheap_t heap){ + return ((struct mdesc *)heap)->heapstats.chunks_used; +}