Description
In the Linux kernel, the following vulnerability has been resolved: tcp: avoid too many retransmit packets If a TCP socket is using TCP_USER_TIMEOUT, and the other peer retracted its window to zero, tcp_retransmit_timer() can retransmit a packet every two jiffies (2 ms for HZ=1000), for about 4 minutes after TCP_USER_TIMEOUT has 'expired'. The fix is to make sure tcp_rtx_probe0_timed_out() takes icsk->icsk_user_timeout into account. Before blamed commit, the socket would not timeout after icsk->icsk_user_timeout, but would use standard exponential backoff for the retransmits. Also worth noting that before commit e89688e3e978 ("net: tcp: fix unexcepted socket die when snd_wnd is 0"), the issue would last 2 minutes instead of 4.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
b701a99e431db784714c32fc6b68123045714679 to < 7bb7670f92bfbd05fc41a8f9a8f358b7ffed65f4affectedb701a99e431db784714c32fc6b68123045714679 to < d2346fca5bed130dc712f276ac63450201d52969affectedb701a99e431db784714c32fc6b68123045714679 to < 5d7e64d70a11d988553a08239c810a658e841982affectedb701a99e431db784714c32fc6b68123045714679 to < 04317a2471c2f637b4c49cbd0e9c0d04a519f570affectedb701a99e431db784714c32fc6b68123045714679 to < e113cddefa27bbf5a79f72387b8fbd432a61a466affectedb701a99e431db784714c32fc6b68123045714679 to < dfcdd7f89e401d2c6616be90c76c2fac3fa98fdeaffectedb701a99e431db784714c32fc6b68123045714679 to < 66cb64a1d2239cd0309f9b5038b05462570a5be1affectedb701a99e431db784714c32fc6b68123045714679 to < 97a9063518f198ec0adb2ecb89789de342bb8283affected
Linux Linux
Default version status: affected
4.19affected0 to < 4.19unaffected4.19.318 to ≤ 4.19.*unaffected5.4.280 to ≤ 5.4.*unaffected5.10.222 to ≤ 5.10.*unaffected5.15.163 to ≤ 5.15.*unaffected6.1.100 to ≤ 6.1.*unaffected6.6.41 to ≤ 6.6.*unaffected6.9.10 to ≤ 6.9.*unaffected6.10 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/7bb7670f92bfbd05fc41a8f9a8f358b7ffed65f4 ↗
- https://git.kernel.org/stable/c/d2346fca5bed130dc712f276ac63450201d52969 ↗
- https://git.kernel.org/stable/c/5d7e64d70a11d988553a08239c810a658e841982 ↗
- https://git.kernel.org/stable/c/04317a2471c2f637b4c49cbd0e9c0d04a519f570 ↗
- https://git.kernel.org/stable/c/e113cddefa27bbf5a79f72387b8fbd432a61a466 ↗
- https://git.kernel.org/stable/c/dfcdd7f89e401d2c6616be90c76c2fac3fa98fde ↗
- https://git.kernel.org/stable/c/66cb64a1d2239cd0309f9b5038b05462570a5be1 ↗
- https://git.kernel.org/stable/c/97a9063518f198ec0adb2ecb89789de342bb8283 ↗
- https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html ↗