Page MenuHomeFreeBSD

iflib: Add rx_wait_irq configuration option
Needs ReviewPublic

Authored by kgalazka on Dec 3 2020, 8:07 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Mar 9, 2:41 AM
Unknown Object (File)
Fri, Mar 6, 4:28 PM
Unknown Object (File)
Thu, Feb 26, 8:11 PM
Unknown Object (File)
Thu, Feb 26, 1:10 PM
Unknown Object (File)
Mon, Feb 23, 10:26 AM
Unknown Object (File)
Sat, Feb 21, 4:02 PM
Unknown Object (File)
Jan 17 2026, 12:24 PM
Unknown Object (File)
Jan 15 2026, 10:59 PM

Details

Summary

This is an observation when receiving bulk traffic with LRO enabled. Checking for available RX descriptors at the end of iflib_rxeof() leads to aggregating only 2-3 frames, causes higher CPU utilization, and regresses the latency of large packet processing (e.g. 64K). So we add a sysctl allowing us the flexibility of switching it back to IRQ-driven RX. When enabled, this has shown to improve CPU utilization by about 20% on our X550 line of adaptors.

Diff Detail

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