Page MenuHomeFreeBSD

Fix TCP module unloading code to work with epoch(9) changes
AcceptedPublic

Authored by jtl on Oct 16 2018, 4:39 PM.
Tags
None
Referenced Files
Unknown Object (File)
Dec 20 2023, 7:10 AM
Unknown Object (File)
Nov 11 2023, 12:09 AM
Unknown Object (File)
Nov 6 2023, 8:00 PM
Unknown Object (File)
Oct 9 2023, 11:06 PM
Unknown Object (File)
Oct 5 2023, 7:06 PM
Unknown Object (File)
Apr 28 2023, 10:56 AM
Unknown Object (File)
Apr 7 2023, 4:36 PM
Unknown Object (File)
Mar 21 2023, 8:02 PM
Subscribers

Details

Reviewers
rrs
lstewart
mmacy
glebius
Group Reviewers
transport
Summary

The TCP stack and CC algorithm removal code assumed that it could use the INP_INFO_WLOCK to prevent races with TCP connection creation and destruction. However, that is no longer the case now that the INP_INFO_RLOCK is really an epoch(9) reach section.

Modify the destructors to wait for all epoch sections to complete prior to checking which connections use the object which is being unloaded.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 20249
Build 19726: arc lint + arc unit