Merge branch '3727-fix-off-by-one-reference-counting-in-zonemgr_keymgmt_delete-v9_18' into 'v9_18'

Release unused key file IO lock objects [v9.18]

See merge request isc-projects/bind9!7193
This commit is contained in:
Ondřej Surý 2022-12-08 10:17:15 +00:00
commit c51cb3b390
3 changed files with 11 additions and 1 deletions

View file

@ -1,3 +1,7 @@
6043. [bug] The key file IO locks objects would never get
deleted from the hashtable due to off-by-one error.
[GL #3727]
6042. [bug] ANY responses could sometimes have the wrong TTL.
[GL #3613]

View file

@ -73,6 +73,12 @@ Bug Fixes
- The ``named`` would wait for some outstanding recursing queries
to finish before shutting down. This has been fixed. :gl:`#3183`
- When a zone is deleted from a server, an key management objects related to
that zone would be kept in the memory and released only at the server
shutdown. This could lead to constantly increasing memory usage for servers
with a high zone churn. :gl:`#3727`
Known Issues
~~~~~~~~~~~~

View file

@ -18959,7 +18959,7 @@ zonemgr_keymgmt_delete(dns_zonemgr_t *zmgr, dns_zone_t *zone) {
if (dns_name_equal(kfio->name, &zone->origin)) {
unsigned int count;
count = atomic_fetch_sub_relaxed(&kfio->count, 1);
count = atomic_fetch_sub_relaxed(&kfio->count, 1) - 1;
if (count > 0) {
/* Keep the entry. */
break;