Page MenuHomeFreeBSD

if_epair: migrate to taskqueue
AbandonedPublic

Authored by kp on Jan 11 2022, 9:04 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Aug 30, 8:30 PM
Unknown Object (File)
Jul 9 2024, 11:46 AM
Unknown Object (File)
Jul 6 2024, 6:06 PM
Unknown Object (File)
Jul 5 2024, 8:16 PM
Unknown Object (File)
Jul 5 2024, 5:20 AM
Unknown Object (File)
Jun 20 2024, 8:27 AM
Unknown Object (File)
Jun 19 2024, 2:09 PM
Unknown Object (File)
Jun 14 2024, 5:29 PM

Details

Reviewers
None
Group Reviewers
network
Summary

Switch from software interrupts to taskqueues. This both prepares the
code to add RSS support, and handle the receive side of things in a
multi-core fashion, but also improve performance in many setups. It
especially improves setup B (see below).

Benchmark results:

Setup A: (cc0 - bridge0 - epair0a) (epair0b - bridge1 - cc1)

Before 346.223 Kpps
After 1.168 Mpps

Setup B: (cc0 - bridge0 - epaira0) (epair0b - vnet jail - epair1a) (epair1b - bridge1 - cc1)

Before 7.705 Kpps
After 1.011 Mpps

MFC after: 3 weeks
Sponsored by: Orange Business Services

Diff Detail

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