HomeFreeBSD

fib_algo: shift / mask by constants in dxr_lookup()

Description

fib_algo: shift / mask by constants in dxr_lookup()

Since trie configuration remains invariant during each DXR instance
lifetime, instead of shifting and masking lookup keys by values
computed at runtime, compile upfront several dxr_lookup()
configurations with hardcoded shift / mask constants, and choose the
apropriate lookup function version after each DXR instance rebuild.

In synthetic tests this yields small but measurable (5-10%) lookup
throughput improvement, depending on FIB size and prefix patterns.

MFC after: 3 days

Details

Provenance
zecAuthored on Jan 16 2022, 11:13 PM
Parents
rGd7ce88aafc87: LinuxKPI: 802.11 correct enum ieee80211_channel_flags
Branches
Unknown
Tags
Unknown