diff options
author | Jakub Kicinski <[email protected]> | 2022-03-21 09:59:57 -0700 |
---|---|---|
committer | Jakub Kicinski <[email protected]> | 2022-03-21 14:27:15 -0700 |
commit | ed0c99dc0f499ff8b6e75b5ae6092ab42be1ad39 (patch) | |
tree | 2f356df678bed0821e92f4c6f94236d0f5d1ad2c /net/lapb/lapb_subr.c | |
parent | 8d3ea3d402db94b61075617e71b67459a714a502 (diff) |
tcp: ensure PMTU updates are processed during fastopen
tp->rx_opt.mss_clamp is not populated, yet, during TFO send so we
rise it to the local MSS. tp->mss_cache is not updated, however:
tcp_v6_connect():
tp->rx_opt.mss_clamp = IPV6_MIN_MTU - headers;
tcp_connect():
tcp_connect_init():
tp->mss_cache = min(mtu, tp->rx_opt.mss_clamp)
tcp_send_syn_data():
tp->rx_opt.mss_clamp = tp->advmss
After recent fixes to ICMPv6 PTB handling we started dropping
PMTU updates higher than tp->mss_cache. Because of the stale
tp->mss_cache value PMTU updates during TFO are always dropped.
Thanks to Wei for helping zero in on the problem and the fix!
Fixes: c7bb4b89033b ("ipv6: tcp: drop silly ICMPv6 packet too big messages")
Reported-by: Andre Nash <[email protected]>
Reported-by: Neil Spring <[email protected]>
Reviewed-by: Wei Wang <[email protected]>
Acked-by: Yuchung Cheng <[email protected]>
Acked-by: Martin KaFai Lau <[email protected]>
Signed-off-by: Jakub Kicinski <[email protected]>
Reviewed-by: Eric Dumazet <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
Diffstat (limited to 'net/lapb/lapb_subr.c')
0 files changed, 0 insertions, 0 deletions