Page MenuHomeFreeBSD

Avoid calling protocol drain routines more than once
ClosedPublic

Authored by jtl on Apr 14 2020, 3:11 PM.
Tags
None
Referenced Files
F103551533: D24418.diff
Tue, Nov 26, 10:32 AM
Unknown Object (File)
Oct 16 2024, 10:54 AM
Unknown Object (File)
Oct 16 2024, 10:54 AM
Unknown Object (File)
Oct 16 2024, 10:54 AM
Unknown Object (File)
Oct 16 2024, 10:34 AM
Unknown Object (File)
Oct 15 2024, 1:01 AM
Unknown Object (File)
Oct 3 2024, 6:32 AM
Unknown Object (File)
Oct 1 2024, 5:30 PM
Subscribers

Details

Summary

mb_reclaim() calls the protocol drain routines for each protocol in each domain. Some protocols exist in more than one domain and share drain routines. In the case of SCTP, it also uses the same drain routine for its SOCK_SEQPACKET and SOCK_STREAM entries in the same domain.

On systems with INET, INET6, and SCTP all defined, mb_reclaim() calls sctp_drain() four times. On systems with INET and INET6 defined, mb_reclaim() calls tcp_drain() twice.

Eliminate this duplication by ensuring that each pr_drain routine is only specified for one protocol entry in one domain.

Diff Detail

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