summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Suryaputra <ssuryaextr@gmail.com>2019-05-06 15:00:01 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-05-16 19:42:34 +0200
commit4911bfb00de358ddfd25a5467c90d6b0eaef071a (patch)
treed437a92c6146faa3aaa08ec0e5855396c4a1470f
parent64651ef94cf587204d7d0dd60c21a93aeb2f1102 (diff)
downloadlinux-stable-4911bfb00de358ddfd25a5467c90d6b0eaef071a.tar.gz
linux-stable-4911bfb00de358ddfd25a5467c90d6b0eaef071a.tar.bz2
linux-stable-4911bfb00de358ddfd25a5467c90d6b0eaef071a.zip
vrf: sit mtu should not be updated when vrf netdev is the link
[ Upstream commit ff6ab32bd4e073976e4d8797b4d514a172cfe6cb ] VRF netdev mtu isn't typically set and have an mtu of 65536. When the link of a tunnel is set, the tunnel mtu is changed from 1480 to the link mtu minus tunnel header. In the case of VRF netdev is the link, then the tunnel mtu becomes 65516. So, fix it by not setting the tunnel mtu in this case. Signed-off-by: Stephen Suryaputra <ssuryaextr@gmail.com> Reviewed-by: David Ahern <dsahern@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--net/ipv6/sit.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c
index f7d080d1cf8e..d2529c38e7e4 100644
--- a/net/ipv6/sit.c
+++ b/net/ipv6/sit.c
@@ -1070,7 +1070,7 @@ static void ipip6_tunnel_bind_dev(struct net_device *dev)
if (!tdev && tunnel->parms.link)
tdev = __dev_get_by_index(tunnel->net, tunnel->parms.link);
- if (tdev) {
+ if (tdev && !netif_is_l3_master(tdev)) {
int t_hlen = tunnel->hlen + sizeof(struct iphdr);
dev->hard_header_len = tdev->hard_header_len + sizeof(struct iphdr);