master/master.c
changeset 992 50a44cbd30af
parent 990 4f223f3df05a
child 993 8c32564252fd
--- a/master/master.c	Wed Jun 11 15:37:38 2008 +0000
+++ b/master/master.c	Thu Jun 12 07:15:54 2008 +0000
@@ -230,7 +230,7 @@
     ec_master_clear_eoe_handlers(master);
 #endif
     ec_master_destroy_slave_configs(master);
-    ec_master_destroy_slaves(master);
+    ec_master_clear_slaves(master);
     ec_master_destroy_domains(master);
     ec_fsm_master_clear(&master->fsm);
     ec_datagram_clear(&master->fsm_datagram);
@@ -280,13 +280,14 @@
 
 /** Destroy all slaves.
  */
-void ec_master_destroy_slaves(ec_master_t *master)
+void ec_master_clear_slaves(ec_master_t *master)
 {
     ec_slave_t *slave, *next;
 
     list_for_each_entry_safe(slave, next, &master->slaves, list) {
         list_del(&slave->list);
-        ec_slave_destroy(slave);
+        ec_slave_clear(slave);
+        kfree(slave);
     }
 
     master->slave_count = 0;
@@ -412,7 +413,7 @@
     ec_master_eoe_stop(master);
 #endif
     ec_master_thread_stop(master);
-    ec_master_destroy_slaves(master);
+    ec_master_clear_slaves(master);
 }
 
 /*****************************************************************************/