Page MenuHomeFreeBSD

sockets/tcp: quick fix for regression with SO_REUSEPORT_LB
ClosedPublic

Authored by glebius on Jan 27 2025, 10:34 PM.
Tags
None
Referenced Files
F164835631: D48703.diff
Tue, Aug 4, 6:35 AM
F164747282: D48703.id.diff
Mon, Aug 3, 2:48 PM
Unknown Object (File)
Tue, Jul 28, 8:10 PM
Unknown Object (File)
Mon, Jul 27, 4:59 PM
Unknown Object (File)
Wed, Jul 22, 6:45 PM
Unknown Object (File)
Tue, Jul 21, 6:42 AM
Unknown Object (File)
Tue, Jul 7, 11:58 PM
Unknown Object (File)
Tue, Jul 7, 11:44 PM
Subscribers

Details

Summary

There was a long living problem that pr_listen is called every time on
consecutive listen(2) syscalls. Up until today it produces spurious TCP
state change events in tracing software and other harmless problems. But
with 7cbb6b6e28db we started to call LIST_REMOVE() twice on the same
entry.

This is quite ugly, but quick and robuse fix against regression, that we
decided to put in the scope of the January stabilization week. A better
refactoring will happen later.

Fixes: 7cbb6b6e28db33095a1cf7a8887921a5ec969824

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 62072
Build 58956: arc lint + arc unit