net: bridge: disable bridge MTU auto tuning if it was set manually
authorNikolay Aleksandrov <nikolay@cumulusnetworks.com>
Fri, 30 Mar 2018 10:46:19 +0000 (13:46 +0300)
committerDavid S. Miller <davem@davemloft.net>
Sun, 1 Apr 2018 02:19:00 +0000 (22:19 -0400)
commit804b854d374e39f5f8bff9638fd274b9a9ca7d33
tree3c81eed86eff79013e00169ac749661b7d6b4ca4
parentf40aa23339e2d06b1a8daaece5a511bb1c4f704c
net: bridge: disable bridge MTU auto tuning if it was set manually

As Roopa noted today the biggest source of problems when configuring
bridge and ports is that the bridge MTU keeps changing automatically on
port events (add/del/changemtu). That leads to inconsistent behaviour
and network config software needs to chase the MTU and fix it on each
such event. Let's improve on that situation and allow for the user to
set any MTU within ETH_MIN/MAX limits, but once manually configured it
is the user's responsibility to keep it correct afterwards.

In case the MTU isn't manually set - the behaviour reverts to the
previous and the bridge follows the minimum MTU.

Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/bridge/br.c
net/bridge/br_device.c
net/bridge/br_if.c
net/bridge/br_private.h