Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
merge conflicts resolved
[simgrid.git] / src / surf / network_constant.c
index 75f0634..d0f25db 100644 (file)
@@ -52,10 +52,21 @@ static void netcste_action_cancel(surf_action_t action)
 
 static double netcste_share_resources(double now)
 {
-  if (!xbt_swag_size(surf_network_model->states.running_action_set)) {
-    return -1.0;
+  surf_action_network_Constant_t action = NULL;
+  xbt_swag_t running_actions =
+      surf_network_model->states.running_action_set;
+  double min = -1.0;
+
+  xbt_swag_foreach(action, running_actions) {
+    if (action->latency > 0) {
+      if (min < 0)
+        min = action->latency;
+      else if (action->latency < min)
+        min = action->latency;
+    }
   }
-  return sg_latency_factor;
+
+  return min;
 }
 
 static void netcste_update_actions_state(double now, double delta)
@@ -136,16 +147,19 @@ static void netcste_action_set_category(surf_action_t action, const char *catego
 static double netcste_get_link_bandwidth(const void *link)
 {
   DIE_IMPOSSIBLE;
+  return -1.0;
 }
 
 static double netcste_get_link_latency(const void *link)
 {
   DIE_IMPOSSIBLE;
+  return -1.0;
 }
 
 static int link_shared(const void *link)
 {
   DIE_IMPOSSIBLE;
+  return -1;
 }
 
 static void netcste_action_suspend(surf_action_t action)
@@ -217,6 +231,5 @@ void surf_network_model_init_Constant()
   netcste_define_callbacks();
   xbt_dynar_push(model_list, &surf_network_model);
 
-  xbt_cfg_set_string(_surf_cfg_set, "routing", "none");
   routing_model_create(sizeof(double), NULL);
 }