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
F167773374: D34062.id101998.diff
Mon, Aug 24, 10:47 AM
Unknown Object (File)
Sat, Aug 22, 6:33 AM
Unknown Object (File)
Tue, Aug 18, 3:37 AM
Unknown Object (File)
Thu, Aug 13, 1:41 PM
Unknown Object (File)
Thu, Aug 13, 4:27 AM
Unknown Object (File)
Tue, Aug 11, 9:56 PM
Unknown Object (File)
Tue, Aug 11, 8:24 PM
Unknown Object (File)
Mon, Aug 10, 2:07 PM

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