summaryrefslogtreecommitdiffhomepage
path: root/interface.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2014-05-02 19:04:42 +0200
committerFelix Fietkau <nbd@openwrt.org>2014-05-02 19:07:28 +0200
commit023db1ca8f352a646700f2d60c397fb89492f4c8 (patch)
treee3f462424cb6885596530abc41e3348081ffcb17 /interface.c
parentc9dadceeba2faa311e4a086f1c6a5eb0d5577c9f (diff)
interface: clear iface->available before changing main_dev
Fixes bogus interface restart loop on interface_remove_link Signed-off-by: Felix Fietkau <nbd@openwrt.org>
Diffstat (limited to 'interface.c')
-rw-r--r--interface.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/interface.c b/interface.c
index 65bc37d..95e1ee8 100644
--- a/interface.c
+++ b/interface.c
@@ -780,6 +780,7 @@ interface_set_main_dev(struct interface *iface, struct device *dev)
if (iface->main_dev.dev == dev)
return;
+ interface_set_available(iface, false);
device_add_user(&iface->main_dev, dev);
if (!dev) {
interface_set_link_state(iface, false);