On Wed, 21 Oct 2020 17:21:55 +0800 we...@ucloud.cn wrote: > From: wenxu <we...@ucloud.cn> > > The TUNNEL_DONT_FRAGMENT flags specific the tunnel outer ip can do > fragment or not in the md mode. Without the TUNNEL_DONT_FRAGMENT > should always do fragment. So it should not care the frag_off in > inner ip.
Can you describe the use case better? My understanding is that we should propagate DF in normally functioning networks, and let PMTU do its job. > Fixes: cfc7381b3002 ("ip_tunnel: add collect_md mode to IPIP tunnel") > Signed-off-by: wenxu <we...@ucloud.cn> > --- > net/ipv4/ip_tunnel.c | 3 --- > 1 file changed, 3 deletions(-) > > diff --git a/net/ipv4/ip_tunnel.c b/net/ipv4/ip_tunnel.c > index 8b04d1d..ee65c92 100644 > --- a/net/ipv4/ip_tunnel.c > +++ b/net/ipv4/ip_tunnel.c > @@ -608,9 +608,6 @@ void ip_md_tunnel_xmit(struct sk_buff *skb, struct > net_device *dev, > ttl = ip4_dst_hoplimit(&rt->dst); > } > > - if (!df && skb->protocol == htons(ETH_P_IP)) > - df = inner_iph->frag_off & htons(IP_DF); > - > headroom += LL_RESERVED_SPACE(rt->dst.dev) + rt->dst.header_len; > if (headroom > dev->needed_headroom) > dev->needed_headroom = headroom;