Apply the bridge MTU setting when set after adding a bridge member as the kernel overrides the bridge mtu with the bridge member MTU
Signed-off-by: Hans Dedecker <dedec...@gmail.com> --- bridge.c | 14 ++++++++++++-- 1 files changed, 12 insertions(+), 2 deletions(-) diff --git a/bridge.c b/bridge.c index 4ef0d7e..75c653a 100644 --- a/bridge.c +++ b/bridge.c @@ -231,8 +231,18 @@ bridge_member_cb(struct device_user *dev, enum device_event ev) bm->present = true; bst->n_present++; - if (bst->dev.active) - bridge_enable_member(bm); + if (bst->dev.active) { + if (!bridge_enable_member(bm)) { + /* + * Adding a bridge member can overwrite the bridge mtu + * in the kernel, apply the bridge settings in case the + * bridge mtu is set + */ + if (bst->dev.settings.flags & DEV_OPT_MTU) + system_if_apply_settings(&bst->dev, + &bst->dev.settings); + } + } else if (bst->n_present == 1) device_set_present(&bst->dev, true); -- 1.7.1 _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel