Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[mc] Remote support for MC_deadlock_check() using MC_MESSAGE_DEADLOCK_CHECK IPC message
[simgrid.git] / src / mc / mc_process.c
index 10d0a45..65c77a8 100644 (file)
@@ -17,6 +17,8 @@
 #include <libunwind.h>
 #include <libunwind-ptrace.h>
 
+#include <xbt/mmalloc.h>
+
 #include "mc_process.h"
 #include "mc_object_info.h"
 #include "mc_address_space.h"
@@ -139,8 +141,7 @@ void MC_process_refresh_heap(mc_process_t process)
   assert(!MC_process_is_self(process));
   // Read/dereference/refresh the std_heap pointer:
   if (!process->heap) {
-    xbt_mheap_t oldheap  = mmalloc_get_current_heap();
-    MC_SET_MC_HEAP;
+    xbt_mheap_t oldheap  = mmalloc_set_current_heap(mc_heap);
     process->heap = malloc(sizeof(struct mdesc));
     mmalloc_set_current_heap(oldheap);
   }
@@ -158,11 +159,10 @@ void MC_process_refresh_malloc_info(mc_process_t process)
   // Refresh process->heapinfo:
   size_t malloc_info_bytesize = process->heap->heaplimit * sizeof(malloc_info);
 
-  xbt_mheap_t oldheap  = mmalloc_get_current_heap();
-  MC_SET_MC_HEAP;
+  xbt_mheap_t heap  = mmalloc_set_current_heap(mc_heap);
   process->heap_info = (malloc_info*) realloc(process->heap_info,
     malloc_info_bytesize);
-  mmalloc_set_current_heap(oldheap);
+  mmalloc_set_current_heap(heap);
 
   MC_process_read(process, MC_ADDRESS_SPACE_READ_FLAGS_NONE,
     process->heap_info,