Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
[trace] do not xbt_die if gtnets is traced
[simgrid.git] / src / instr / instr_routing.c
index c65dabf..bc53ae6 100644 (file)
@@ -213,6 +213,7 @@ container_t newContainer (const char *name, e_container_types kind, container_t
       case INSTR_ROUTER: new->type = getContainerType ("ROUTER", new->father->type); break;
       case INSTR_SMPI: new->type = getContainerType ("MPI", new->father->type); break;
       case INSTR_MSG_PROCESS: new->type = getContainerType ("MSG_PROCESS", new->father->type); break;
+      case INSTR_MSG_TASK: new->type = getContainerType ("MSG_TASK", new->father->type); break;
       default: xbt_die ("Congratulations, you have found a bug on newContainer function of instr_routing.c"); break;
     }
   }
@@ -388,7 +389,7 @@ static void recursiveGraphExtraction (container_t container)
             (child2->kind == INSTR_HOST  || child2->kind == INSTR_ROUTER)){
 
           //getting route
-          xbt_dynar_t route;
+          xbt_dynar_t route = NULL;
           xbt_ex_t exception;
           TRY {
             route = global_routing->get_route (child_name1, child_name2);
@@ -413,7 +414,7 @@ static void recursiveGraphExtraction (container_t container)
 
           //getting route
           routing_component_t root = global_routing->root;
-          route_extended_t route;
+          route_extended_t route = NULL;
           xbt_ex_t exception;
           TRY {
             route = root->get_route (root, child_name1, child_name2);
@@ -512,7 +513,15 @@ static void instr_routing_parse_start_host ()
   }
 
   if (TRACE_msg_process_is_enabled()) {
-    getContainerType("MSG_PROCESS", new->type);
+    type_t msg_process = getContainerType("MSG_PROCESS", new->type);
+    getStateType ("MSG_PROCESS_STATE", msg_process);
+    getLinkType ("MSG_PROCESS_LINK", rootType, msg_process, msg_process);
+  }
+
+  if (TRACE_msg_task_is_enabled()) {
+    type_t msg_task = getContainerType ("MSG_TASK", new->type);
+    getStateType ("MSG_TASK_STATE", msg_task);
+    getLinkType ("MSG_TASK_LINK", rootType, msg_task, msg_task);
   }
 }