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
F167961854: D48703.id150057.diff
Tue, Aug 25, 3:42 PM
F167932944: D48703.id150056.diff
Tue, Aug 25, 12:13 PM
Unknown Object (File)
Mon, Aug 24, 10:39 AM
Unknown Object (File)
Sun, Aug 23, 6:59 PM
Unknown Object (File)
Sun, Aug 23, 3:44 PM
Unknown Object (File)
Sat, Aug 22, 10:33 AM
Unknown Object (File)
Thu, Aug 20, 2:44 PM
Unknown Object (File)
Sat, Aug 15, 3:36 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 62073
Build 58957: arc lint + arc unit