]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
Switch RIB and RADIX_NODE_HEAD lock from rwlock(9) to rmlock(9).
authorAndrey V. Elsukov <ae@FreeBSD.org>
Sat, 16 Jun 2018 08:26:23 +0000 (08:26 +0000)
committerAndrey V. Elsukov <ae@FreeBSD.org>
Sat, 16 Jun 2018 08:26:23 +0000 (08:26 +0000)
commit20efcfc602b7a57979da99f0a1f917d9fb4a30e1
tree91b7ea9ed212f2ae8b8ca0f36e2a9096d1f45561
parentbcc0decdc98d144587f18312b69862524393c3f8
Switch RIB and RADIX_NODE_HEAD lock from rwlock(9) to rmlock(9).

Using of rwlock with multiqueue NICs for IP forwarding on high pps
produces high lock contention and inefficient. Rmlock fits better for
such workloads.

Reviewed by: melifaro, olivier
Obtained from: Yandex LLC
Sponsored by: Yandex LLC
Differential Revision: https://reviews.freebsd.org/D15789
12 files changed:
sys/kern/subr_witness.c
sys/kern/vfs_export.c
sys/net/radix.c
sys/net/radix.h
sys/net/radix_mpath.c
sys/net/route.c
sys/net/route_var.h
sys/net/rtsock.c
sys/netinet/in_fib.c
sys/netinet6/in6_fib.c
sys/netpfil/ipfw/ip_fw_table_algo.c
sys/nfs/bootp_subr.c