diff --git a/ifupdown2/addons/ifenslave.py b/ifupdown2/addons/ifenslave.py index 671d725..c79cbb1 100644 --- a/ifupdown2/addons/ifenslave.py +++ b/ifupdown2/addons/ifenslave.py @@ -219,10 +219,6 @@ class ifenslave(moduleBase): if not self.PERFMODE: runningslaves = self.ifenslavecmd.get_slaves(ifaceobj.name); - if runningslaves: - # Delete active slaves not in the new slave list - [ self.ifenslavecmd.remove_slave(ifaceobj.name, s) - for s in runningslaves if s not in slaves ] for slave in Set(slaves).difference(Set(runningslaves)): if not self.PERFMODE and not self.ipcmd.link_exists(slave): @@ -242,6 +238,11 @@ class ifenslave(moduleBase): %(ifaceobj.name, slave, str(e))) pass + if runningslaves: + # Delete active slaves not in the new slave list + [ self.ifenslavecmd.remove_slave(ifaceobj.name, s) + for s in runningslaves if s not in slaves ] + def _set_clag_enable(self, ifaceobj): attrval = ifaceobj.get_attr_value_first('clag-id') attrval = attrval if attrval else '0'