Page MenuHomeFreeBSD

tcp: prevent spurious empty segments and fix uncommon panic
ClosedPublic

Authored by rscheff on Jan 6 2024, 1:18 PM.
Tags
None
Referenced Files
F113113292: D43343.diff
Wed, Mar 26, 1:40 PM
Unknown Object (File)
Mon, Mar 24, 1:14 PM
Unknown Object (File)
Tue, Mar 11, 1:34 PM
Unknown Object (File)
Thu, Mar 6, 6:39 AM
Unknown Object (File)
Feb 21 2025, 4:59 PM
Unknown Object (File)
Feb 20 2025, 9:16 AM
Unknown Object (File)
Jan 14 2025, 2:36 AM
Unknown Object (File)
Jan 6 2025, 12:29 AM
Subscribers

Details

Summary

When receiving pure ACKs for previously sent data,
but no more data is available in the send buffer,
an spurious empty ACK would frequently be sent instead.

In the case of a retransmitted SYN not being sent due to
an internal error, the snd_una/snd_nxt accounting could
be off, leading to a panic. Pulling snd_nxt up to snd_una
prevents this from happening.

Reported by: fengdreamer@126.com

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable