X-Git-Url: https://git.archive.openwrt.org/?a=blobdiff_plain;f=bridge.c;h=0ae9d00d1badbc45d666d5238367399861abdd37;hb=9bebe7d7bc94667c793d1956e2960163dee75e51;hp=3f8739cb5bd5bfc6aecc62e4e963edf099dbde04;hpb=42f13a72a5f7db5919d5a669dc40c85433a5bf40;p=project%2Fnetifd.git diff --git a/bridge.c b/bridge.c index 3f8739c..0ae9d00 100644 --- a/bridge.c +++ b/bridge.c @@ -72,7 +72,7 @@ bridge_disable_member(struct bridge_member *bm) return 0; system_bridge_delif(&bst->dev, bm->dev.dev); - device_release(bm->dev.dev); + device_release(&bm->dev); return 0; } @@ -86,7 +86,7 @@ bridge_enable_member(struct bridge_member *bm) if (!bm->present) return 0; - ret = device_claim(bm->dev.dev); + ret = device_claim(&bm->dev); if (ret < 0) goto error; @@ -281,6 +281,7 @@ bridge_free(struct device *dev) struct bridge_state *bst; struct bridge_member *bm; + device_cleanup(dev); bst = container_of(dev, struct bridge_state, dev); while (!list_empty(&bst->members)) { bm = list_first_entry(&bst->members, struct bridge_member, list);