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)
Thu, Oct 16, 5:38 PM
Unknown Object (File)
Thu, Oct 16, 3:45 PM
Unknown Object (File)
Wed, Oct 8, 2:47 PM
Unknown Object (File)
Tue, Oct 7, 1:15 AM
Unknown Object (File)
Sep 17 2025, 6:00 AM
Unknown Object (File)
Sep 10 2025, 6:11 PM
Unknown Object (File)
Sep 3 2025, 6:31 PM
Unknown Object (File)
Aug 26 2025, 9:59 AM

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