On 5/6/19 1:00 PM, Stephen Suryaputra wrote: > 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 <ssuryae...@gmail.com> > --- > net/ipv6/sit.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c > index b2109b74857d..971d60bf9640 100644 > --- a/net/ipv6/sit.c > +++ b/net/ipv6/sit.c > @@ -1084,7 +1084,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); >
can you explain how tdev is a VRF device? What's the config setup for this case?