Page MenuHomeFreeBSD

Tidying up all the conditionals, when a spurious RTO is unwound
ClosedPublic

Authored by rscheff on Jan 27 2022, 3:54 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, May 8, 10:07 AM
Unknown Object (File)
Thu, May 7, 2:03 AM
Unknown Object (File)
Wed, May 6, 9:06 AM
Unknown Object (File)
Sun, May 3, 6:38 AM
Unknown Object (File)
Mon, Apr 27, 12:55 PM
Unknown Object (File)
Tue, Apr 21, 9:35 PM
Unknown Object (File)
Tue, Apr 21, 9:27 PM
Unknown Object (File)
Thu, Apr 16, 11:46 AM

Details

Summary

This is a split-off from D33979, where only an acute issue is addressed.

The below points were noted incidentially while addressing that TF_PREVVALID
must not, just by itself, be used as sole condition for restoring old TCP state.

  • Use the semantically correct TSTMP_xx macro when comparing timestamps. (No functional change)
  • check for bad retransmits only when TSopt is present in ACK (don't assume there will be a valid TSopt in the TCP options struct)
  • exclude tsecr == 0, since that most likely indicates an invalid ts echo return (tsecr) value.

Diff Detail

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