On Wed, 21 Oct 2020 17:21:55 +0800 [email protected] wrote:
> From: wenxu <[email protected]>
>
> 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 <[email protected]>
> ---
> 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;