From: Alexey Kodanev <alexey.koda...@oracle.com> Date: Thu, 14 Dec 2017 20:20:00 +0300
> Stefano Brivio says: > Commit a985343ba906 ("vxlan: refactor verification and > application of configuration") introduced a change in the > behaviour of initial MTU setting: earlier, the MTU for a link > created on top of a given lower device, without an initial MTU > specification, was set to the MTU of the lower device minus > headroom as a result of this path in vxlan_dev_configure(): > > if (!conf->mtu) > dev->mtu = lowerdev->mtu - > (use_ipv6 ? VXLAN6_HEADROOM : VXLAN_HEADROOM); > > which is now gone. Now, the initial MTU, in absence of a > configured value, is simply set by ether_setup() to ETH_DATA_LEN > (1500 bytes). > > This breaks userspace expectations in case the MTU of > the lower device is higher than 1500 bytes minus headroom. > > This patch restores the previous behaviour on newlink operation. Since > max_mtu can be negative and we update dev->mtu directly, also check it > for valid minimum. > > Reported-by: Junhan Yan <ju...@redhat.com> > Fixes: a985343ba906 ("vxlan: refactor verification and application of > configuration") > Signed-off-by: Alexey Kodanev <alexey.koda...@oracle.com> Applied and queued up for -stable, thanks.