summaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorAlexander Bluhm <bluhm@cvs.openbsd.org>2023-06-24 20:54:47 +0000
committerAlexander Bluhm <bluhm@cvs.openbsd.org>2023-06-24 20:54:47 +0000
commit3be68856210d57d2e89cf39c635eecf99eae2492 (patch)
treebdcb4b7434a54dea017e64f25d82b76e8051feb9 /lib
parent4b57fdc8405c969abbb8cbb7dddbbac44d9ee33f (diff)
Calculate inet PCB SIP hash without table mutex.
Goal is to run UDP input in parallel. Btrace kstack analysis shows that SIP hash for PCB lookup is quite expensive. When running in parallel, there is also lock contention on the PCB table mutex. It results in better performance to calculate the hash value before taking the mutex. The hash secret has to be constant as hash calculation must not depend on values protected by the table mutex. Do not reseed anymore when hash table gets resized. Analysis also shows that asserting a rw_lock while holding a mutex is a bit expensive. Just remove the netlock assert. OK dlg@ mvs@
Diffstat (limited to 'lib')
0 files changed, 0 insertions, 0 deletions