Page MenuHomeFreeBSD

Use tcp_state_change() in the cxgbe(4) TOE module.
ClosedPublic

Authored by jhb on Nov 9 2018, 12:22 AM.
Tags
None
Referenced Files
F148331290: D17915.id50231.diff
Tue, Mar 17, 5:18 AM
Unknown Object (File)
Sat, Mar 14, 2:24 PM
Unknown Object (File)
Feb 5 2026, 9:41 PM
Unknown Object (File)
Nov 27 2025, 8:35 AM
Unknown Object (File)
Nov 20 2025, 8:37 PM
Unknown Object (File)
Nov 20 2025, 8:36 PM
Unknown Object (File)
Nov 20 2025, 8:36 PM
Unknown Object (File)
Nov 20 2025, 8:28 PM
Subscribers

Details

Summary

r254889 added tcp_state_change() as a centralized place to log state
changes in TCP connections for DTrace. r294869 and r296881 took
advantage of this central location to manage per-state counters.
However, TOE sockets were still performing some (but not all) state
change updates via direct assignments to t_state. This resulted in
state counters underflowing when TOE was in use. Fix by using
tcp_state_change() when changing a TOE connection's state.

Test Plan
  • run netstat -s -p tcp while TOE is in use

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable