bind9/lib/dns
Ondřej Surý 6873cc1c79 Run the RPZ update as offloaded work
Previously, the RPZ updates ran quantized on the main nm_worker loops.
As the quantum was set to 1024, this might lead to service
interruptions when large RPZ update was processed.

Change the RPZ update process to run as the offloaded work.  The update
and cleanup loops were refactored to do as little locking of the
maintenance lock as possible for the shortest periods of time and the db
iterator is being paused for every iteration, so we don't hold the rbtdb
tree lock for prolonged periods of time.

(cherry picked from commit f106d0ed2b)
2023-02-13 11:41:52 +00:00
..
include Run the RPZ update as offloaded work 2023-02-13 11:41:52 +00:00
rdata Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
.gitignore 4394. [func] Add rndc command "dnstap-reopen" to close and 2016-06-24 09:37:04 +10:00
acl.c Add isc_rwlock around dns_aclenv .localhost and .localnets member 2022-04-26 14:21:57 +02:00
adb.c Properly name ADB hashmap and named log memory contexts 2023-01-30 12:38:13 +01:00
badcache.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
byaddr.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
cache.c Add dns_db_allrdatasets options 2022-12-07 23:59:36 +00:00
callbacks.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
catz.c Don't use reference counting in isc_timer unit 2023-01-18 22:39:26 +01:00
client.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
clientinfo.c refactor dns_clientinfo_init(); use separate function to set ECS 2023-02-08 00:13:12 -08:00
compress.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
db.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
dbiterator.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
diff.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
dispatch.c use configured source ports for UDP requests 2023-02-06 17:02:02 -08:00
dlz.c Remove use of the inline keyword used as suggestion to compiler 2022-03-25 08:42:18 +01:00
dns64.c Add isc_rwlock around dns_aclenv .localhost and .localnets member 2022-04-26 14:21:57 +02:00
dnsrps.c Handle iterator options in rpsdb_allrdatasets() 2023-02-01 11:26:31 +01:00
dnssec.c silence a spurious warning during key generation 2023-02-07 23:30:24 -08:00
dnstap.c dnstap query_message field was erroneously set with responses 2022-08-31 15:24:00 -07:00
dnstap.proto Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
ds.c Simplify way we tag unreachable code with only ISC_UNREACHABLE() 2022-03-25 08:42:16 +01:00
dst_api.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
dst_internal.h Check if key metadata is modified before writing 2022-05-16 10:37:23 +02:00
dst_openssl.h Use autoconf check for BN_GENCB_new() 2022-03-02 10:49:47 +00:00
dst_parse.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
dst_parse.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
dyndb.c remove isc_bind9 variable 2023-02-09 10:07:39 -08:00
ecs.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
fixedname.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
forward.c Use sizeof(*ptr) for allocating/freeing memory in forward.c 2023-01-11 13:42:09 +00:00
gen.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
geoip2.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
gssapi_link.c Remove a redundant variable-length array 2022-03-18 16:05:56 +00:00
gssapictx.c Remove use of the inline keyword used as suggestion to compiler 2022-03-25 08:42:18 +01:00
hmac_link.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
ipkeylist.c remove nonfunctional DSCP implementation 2023-01-09 14:23:26 -08:00
iptable.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
journal.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
kasp.c Store built-in dnssec-policies in defaultconf 2022-06-28 14:36:38 +02:00
key.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
keydata.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
keymgr.c Force set DS state after 'rndc dnssec -checkds' 2023-01-30 09:27:38 +01:00
keytable.c Add synth-from-dnssec namespaces for keytable entries 2022-07-07 07:47:45 +10:00
log.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
lookup.c Remove use of the inline keyword used as suggestion to compiler 2022-03-25 08:42:18 +01:00
Makefile.am Update libdns_la_LIBADD rather than libdns_la_LDFLAGS 2022-07-13 10:46:37 +10:00
master.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
masterdump.c Add dns_db_allrdatasets options 2022-12-07 23:59:36 +00:00
message.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
name.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
ncache.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
nsec.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
nsec3.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
nta.c Don't use reference counting in isc_timer unit 2023-01-18 22:39:26 +01:00
openssl_link.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
openssl_shim.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
openssl_shim.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
openssldh_link.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
opensslecdsa_link.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
openssleddsa_link.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
opensslrsa_link.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
order.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
peer.c remove nonfunctional DSCP implementation 2023-01-09 14:23:26 -08:00
private.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
rbt.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
rbtdb.c Add missing node lock when setting node->wild in rbtdb.c 2023-01-20 00:46:24 +11:00
rbtdb.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
rcode.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
rdata.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
rdatalist.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
rdatalist_p.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
rdataset.c Define DNS_RDATASET_INIT for static initialisation 2023-02-09 08:58:15 +11:00
rdatasetiter.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
rdataslab.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
request.c remove nonfunctional DSCP implementation 2023-01-09 14:23:26 -08:00
resolver.c BIND 9.18.11 2023-01-25 21:26:22 +01:00
result.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
rootns.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
rpz.c Run the RPZ update as offloaded work 2023-02-13 11:41:52 +00:00
rriterator.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
rrl.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
sdb.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
sdlz.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
soa.c Remove use of the inline keyword used as suggestion to compiler 2022-03-25 08:42:18 +01:00
ssu.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
ssu_external.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
stats.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
tests Move all the unit tests to /tests/<libname>/ 2022-05-31 12:06:00 +02:00
time.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
tkey.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
transport.c Rename "hostname" to "remote-hostname" within "tls" 2022-05-03 17:42:43 +03:00
tsec.c Simplify way we tag unreachable code with only ISC_UNREACHABLE() 2022-03-25 08:42:16 +01:00
tsig.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
tsig_p.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
ttl.c Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
update.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
validator.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
view.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
xfrin.c Refactor isc_nm_xfr_allowed() 2023-01-19 12:20:10 +00:00
zone.c delay trust anchor management until zones are loaded 2023-02-06 14:27:16 -08:00
zone_p.h Update the copyright information in all files in the repository 2022-01-11 09:05:02 +01:00
zonekey.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00
zoneverify.c Extend dns_db_allrdatasets to control interation results 2022-12-07 23:59:36 +00:00
zt.c Update sources to Clang 15 formatting 2022-11-29 09:14:07 +01:00