system-linux: remove debug tracing
[project/netifd.git] / interface.c
index b8c4ae23a2f1cadbc48541f929763860f7ff3d43..e0652cdb79d0fc957a11db2146242a439c51fbf7 100644 (file)
@@ -269,6 +269,7 @@ mark_interface_down(struct interface *iface)
        iface->state = IFS_DOWN;
        switch (state) {
        case IFS_UP:
+       case IFS_TEARDOWN:
                interface_event(iface, IFEV_DOWN);
                break;
        case IFS_SETUP:
@@ -342,11 +343,11 @@ interface_check_state(struct interface *iface)
        case IFS_UP:
        case IFS_SETUP:
                if (!iface->enabled || !link_state) {
-                       interface_proto_event(iface->proto, PROTO_CMD_TEARDOWN, false);
+                       iface->state = IFS_TEARDOWN;
                        if (iface->dynamic)
                                __set_config_state(iface, IFC_REMOVE);
 
-                       mark_interface_down(iface);
+                       interface_proto_event(iface->proto, PROTO_CMD_TEARDOWN, false);
                }
                break;
        case IFS_DOWN: