bind9/lib
Ondřej Surý 6011fb5484
Use lock-free hashtable for storing resolver fetch contexts
Previously, the fetch contexts were stored inside rwlocked hashmap
table.  This was one of the most contended places for the resolver,
especially in the cold cache situation.

Replace the locked hashmap with the lock-free hashtable from the RCU
library and protect the fetch contexts against reuse by replacing the
libisc reference counting with urcu_ref that can soft-fail in situation
where the reference count is already zero.  This allows us to easily
skip re-using the fetch context if it is already in process of being
destroyed.
2025-09-24 00:08:21 +02:00
..
dns Use lock-free hashtable for storing resolver fetch contexts 2025-09-24 00:08:21 +02:00
isc Use lock-free hashtable for storing resolver fetch contexts 2025-09-24 00:08:21 +02:00
isccc replace the build system with meson 2025-06-11 10:30:12 +03:00
isccfg add namedconf support for plugin inside a zone 2025-09-09 09:42:34 +02:00
ns rename NS_QUERY_RESET to NS_QUERY_CLEANUP 2025-09-10 17:46:53 -07:00
.gitignore The isc/platform.h header has been completely removed 2021-07-06 05:33:48 +00:00
meson.build replace the build system with meson 2025-06-11 10:30:12 +03:00