bind9/lib/isc/include
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
..
isc Use lock-free hashtable for storing resolver fetch contexts 2025-09-24 00:08:21 +02:00
.clang-format Add separate .clang-format files for headers 2020-02-14 09:31:05 +01:00