On 7/17/20 6:27 AM, Stefano Brivio wrote: >> >>> Note that this doesn't work as it is because of a number of reasons >>> (skb doesn't have a dst, pkt_type is not PACKET_HOST), and perhaps we >>> shouldn't be using icmp_send(), but at a glance that looks simpler. >> >> Yes, it also requires that the bridge has IP connectivity >> to reach the inner ip, which might not be the case. > > If the VXLAN endpoint is a port of the bridge, that needs to be the > case, right? Otherwise the VXLAN endpoint can't be reached. > >>> Another slight preference I have towards this idea is that the only >>> known way we can break PMTU discovery right now is by using a bridge, >>> so fixing the problem there looks more future-proof than addressing any >>> kind of tunnel with this problem. I think FoU and GUE would hit the >>> same problem, I don't know about IP tunnels, sticking that selftest >>> snippet to whatever other test in pmtu.sh should tell. >> >> Every type of bridge port that needs to add additional header on egress >> has this problem in the bridge scenario once the peer of the IP tunnel >> signals a PMTU event. > > Yes :( >
The vxlan/tunnel device knows it is a bridge port, and it knows it is going to push a udp and ip{v6} header. So why not use that information in setting / updating the MTU? That's what I was getting at on Monday with my comment about lwtunnel_headroom equivalent.