From d301450949ebdf4d6e4ed72964073fabf4671bcd Mon Sep 17 00:00:00 2001 From: Florian Pose Date: Fri, 27 Oct 2006 15:04:12 +0000 Subject: [PATCH] BUGFIX: Remove SDO configurations when leaving OPERATION mode. --- master/slave.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/master/slave.c b/master/slave.c index 77fe52ab..95aa8b4f 100644 --- a/master/slave.c +++ b/master/slave.c @@ -283,7 +283,17 @@ void ec_slave_clear(struct kobject *kobj /**< kobject of the slave */) void ec_slave_reset(ec_slave_t *slave /**< EtherCAT slave */) { + ec_sdo_data_t *sdodata, *next_sdodata; + + // remove FMMU configurations slave->fmmu_count = 0; + + // free all SDO configurations + list_for_each_entry_safe(sdodata, next_sdodata, &slave->sdo_confs, list) { + list_del(&sdodata->list); + kfree(sdodata->data); + kfree(sdodata); + } } /*****************************************************************************/