Kristof Provost fffd27e5f3 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.

Reviewed by:	emaste, philip, melifaro
MFC after:	2 months
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D24250
2020-04-26 16:22:35 +00:00
..
2020-04-24 01:27:25 +00:00
2020-04-14 18:57:00 +00:00
2020-04-26 16:22:35 +00:00
2020-04-26 16:16:39 +00:00
2020-04-23 09:37:22 +00:00
2020-02-03 17:35:11 +00:00