On Wed, 10 Apr 2019 02:32:08 +0000 Huang Rui <huangruippp@xxxxxxxxx> wrote: > For example. > My purpose is to create a bridge br0 and join eth0 into br0. > if we use this following way, the auto-tuning flag will not be disabled. > > If eth0's mtu is 1200 > step 1.brctl addbr br0 > step 2.brctl addif br0 eth0 > step 3.ifconfig br0 mtu 1200 > step 4.ifconfig eth0 mtu 1500 > > Result: > br0's MTU: 1500, eth0's MTU: 1500 > > Expected: > br0's MTU: 1200, eth0's MTU: 1500 > > I have specified br0's MTU, but auto-min policy works. So the MTU is > not the result what we expected. > As expected, if i have specified bridge's MTU, it will set the flag: > BROPT_MTU_SET_BY_USER in net_bridge_opts disabled and auto-min/max > policy will not work.But in this case, because the dev_set_mtu return > early, the BROPT_MTU_SET_BY_USER flag will not be disabled and > auto-min/max policy will still work. > > Signed-off-by: Huang Rui <huangruiPPP@xxxxxxxxx> A bridge like this going to drop frames. A frame received with MTU of 1200 will get dropped. The proper way to do this is to change MTU of both interfaces to match.