Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Allow communication actions to use no link at all (e.g., for Vivaldi).
authoralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Thu, 2 Dec 2010 22:26:24 +0000 (22:26 +0000)
committeralegrand <alegrand@48e7efb5-ca39-0410-a469-dd3cf9ba447f>
Thu, 2 Dec 2010 22:26:24 +0000 (22:26 +0000)
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/simgrid/simgrid/trunk@8951 48e7efb5-ca39-0410-a469-dd3cf9ba447f

src/surf/network.c

index b1dbf58..e35c649 100644 (file)
@@ -392,6 +392,14 @@ static void net_update_actions_state(double now, double delta)
                                       delta);
     }
 #endif
+    if(!lmm_get_number_of_cnst_from_var(network_maxmin_system, action->variable)) {
+                               /* There is actually no link used, hence an infinite bandwidth.
+                                * This happens often when using models like vivaldi.
+                                * In such case, just make sure that the action completes immediately.
+                                */
+       double_update(&(action->generic_action.remains),
+                       action->generic_action.remains);
+    }
     double_update(&(action->generic_action.remains),
                   lmm_variable_getvalue(action->variable) * deltap);
     if (action->generic_action.max_duration != NO_MAX_DURATION)