Page MenuHomeFreeBSD

if_epair: refactor interface creation and enqueue code.
ClosedPublic

Authored by melifaro on Sep 24 2022, 8:22 PM.
Tags
None
Referenced Files
F132421068: D36689.diff
Thu, Oct 16, 7:17 PM
Unknown Object (File)
Tue, Oct 14, 2:58 PM
Unknown Object (File)
Tue, Oct 14, 7:48 AM
Unknown Object (File)
Sun, Oct 12, 4:54 AM
Unknown Object (File)
Sun, Oct 12, 4:54 AM
Unknown Object (File)
Sun, Oct 12, 4:54 AM
Unknown Object (File)
Sat, Oct 11, 6:52 PM
Unknown Object (File)
Wed, Sep 17, 7:43 AM
Subscribers

Details

Summary
  • Factor out queue selection (epair_select_queue()) and mbuf preparation (epair_prepare_mbuf()) from epair_menq(). It simplifies epair_menq() implementation and reduces the amount of dependencies on the neighbouring epair.
  • Use dedicated epair_set_state() instead of 2-lines copy-paste
  • Factor out unit selection code (epair_handle_unit()) from epair_clone_create(). It simplifies the clone creation logic.
Test Plan
20:23 [0] m@devel1 s kyua test -k /usr/tests/sys/net/Kyuafile
125/126 passed (1 failed)
  1. The failing one is if_lagg_test:witness

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable