opnsense-src/sys/netipsec
Kristof Provost 1243360b1a ipsec: replace SECASVAR mtx by rmlock
This mutex is a significant point of contention in the ipsec code, and
can be relatively trivially replaced by a read-mostly lock.
It does require a separate lock for the replay protection, which we do
here by adding a separate mutex.

This improves throughput (without replay protection) by 10-15%.

MFC after:	3 weeks
Sponsored by:	Orange Business Services
Differential Revision:	https://reviews.freebsd.org/D35763

(cherry picked from commit 0361f165f2)
2022-08-09 15:46:57 +02:00
..
ah.h
ah_var.h
esp.h net: clean up empty lines in .c and .h files 2020-09-01 21:19:14 +00:00
esp_var.h
ipcomp.h
ipcomp_var.h
ipsec.c ipsec: replace SECASVAR mtx by rmlock 2022-08-09 15:46:57 +02:00
ipsec.h Implement anti-replay algorithm with ESN support 2020-10-16 11:24:12 +00:00
ipsec6.h
ipsec_input.c ipsec: enter epoch before calling into ipsec_run_hhooks 2021-10-11 09:10:31 +00:00
ipsec_mbuf.c Fix unused variable warning in ipsec_mbuf.c 2022-07-24 13:00:06 +02:00
ipsec_mod.c
ipsec_output.c netinet: Remove unneeded mb_unmapped_to_ext() calls 2021-12-01 07:43:18 -05:00
ipsec_pcb.c net: clean up empty lines in .c and .h files 2020-09-01 21:19:14 +00:00
ipsec_support.h
key.c ipsec: replace SECASVAR mtx by rmlock 2022-08-09 15:46:57 +02:00
key.h
key_debug.c ipsec: replace SECASVAR mtx by rmlock 2022-08-09 15:46:57 +02:00
key_debug.h
key_var.h
keydb.h ipsec: replace SECASVAR mtx by rmlock 2022-08-09 15:46:57 +02:00
keysock.c socket: Implement SO_RERROR 2021-08-10 18:54:00 -07:00
keysock.h
subr_ipsec.c
udpencap.c net: clean up empty lines in .c and .h files 2020-09-01 21:19:14 +00:00
xform.h Simplify IPsec transform-specific teardown. 2020-06-25 23:59:16 +00:00
xform_ah.c ipsec: replace SECASVAR mtx by rmlock 2022-08-09 15:46:57 +02:00
xform_esp.c ipsec: replace SECASVAR mtx by rmlock 2022-08-09 15:46:57 +02:00
xform_ipcomp.c ipsec: replace SECASVAR mtx by rmlock 2022-08-09 15:46:57 +02:00
xform_tcp.c syncache: accept packet with no SA when TCP_MD5SIG is set 2022-02-10 10:31:33 -09:00