HomeFreeBSD

MFC r360345:

Description

MFC r360345:

bridge: epoch-ification

Run the bridge datapath under epoch, rather than under the
BRIDGE_LOCK().

We still take the BRIDGE_LOCK() whenever we insert or delete items in
the relevant lists, but we use epoch callbacks to free items so that
it's safe to iterate the lists without the BRIDGE_LOCK.

Tests on mercat5/6 shows this increases bridge throughput significantly,
from 3.7Mpps to 18.6Mpps.

MFC after: The FreeBSD Foundation

Details

Provenance
kpAuthored on
Parents
rS362649: MFC r359641:
Branches
Unknown
Tags
Unknown