Page MenuHomeFreeBSD

Fix KASSERT during tcp_newtcpcb when low on memory
ClosedPublic

Authored by rscheff on Jul 6 2020, 9:56 PM.
Tags
None
Referenced Files
Unknown Object (File)
Tue, Apr 9, 8:26 PM
Unknown Object (File)
Fri, Apr 5, 11:44 PM
Unknown Object (File)
Feb 28 2024, 4:42 PM
Unknown Object (File)
Dec 20 2023, 2:35 AM
Unknown Object (File)
Dec 12 2023, 2:13 AM
Unknown Object (File)
Nov 13 2023, 7:41 PM
Unknown Object (File)
Nov 9 2023, 1:38 PM
Unknown Object (File)
Nov 8 2023, 9:49 PM
Subscribers

Details

Summary

While testing with system default cc set to cubic, and
running a memory exhaustion validation, FreeBSD panics for a
missing inpcb reference / lock.

Test Plan

Modify modular CC, to return ENOMEM during the _cb_init() function;
load modified CC, and temporarily switch to it as default CC.
Validate that a new session fails with "socket: No buffer space available", instead of a kernel panic (kassert).
Unset the modified CC as default algorithm.

Diff Detail

Lint
Lint Passed
Unit
No Test Coverage
Build Status
Buildable 32174
Build 29675: arc lint + arc unit