master/master.c
changeset 1178 ca00393c8ca6
parent 1092 69393cf60399
child 1181 9e5954a2a46e
--- a/master/master.c	Fri Aug 01 07:22:13 2008 +0000
+++ b/master/master.c	Fri Aug 01 07:23:09 2008 +0000
@@ -503,12 +503,19 @@
     ec_master_clear_slave_configs(master);
     up(&master->master_sem);
 
-    // set states for all slaves
     for (slave = master->slaves;
             slave < master->slaves + master->slave_count;
             slave++) {
+
+        // set states for all slaves
         ec_slave_request_state(slave, EC_SLAVE_STATE_PREOP);
-    }
+
+        // mark for reconfiguration, because the master could have no
+        // possibility for a reconfiguration between two sequential operation
+        // phases.
+        slave->force_config = 1;
+    }
+
 #ifdef EC_EOE
     // ... but leave EoE slaves in OP
     list_for_each_entry(eoe, &master->eoe_handlers, list) {