From: wenxu@ucloud.cn
Date: Tue, 9 Aug 2016 15:04:21 +0800
From: wenxu <redacted>
commit b8247f095edd ("net: ip_finish_output_gso: If skb_gso_network_seglen
exceeds MTU, allow segmentation for local udp tunneled skbs")
Given:
- tap0 and ovs-gre
- ovs-gre stacked on eth0, eth0 having the small mtu
After encapsulation these skbs have skb_gso_network_seglen that exceed
eth0's ip_skb_dst_mtu. So the finnal each segment would be larger than
eth0 mtu. These packets maybe dropped.
It has the same problem if tap0 bridge with ipgre or gretap device. So
the IPSKB_FRAG_SEGS flags should also be set in gre tunneled skbs.
Signed-off-by: wenxu <redacted>
I am rather certain that this test is intentionally restricted to
UDP tunnel endpoints, because GRE and other tunnel types are PMTU safe.
Hannes and Shmulik?