Commit fbef859be3 for bind
commit fbef859be3c37866d43768fe12c9ec253be617ab
Author: Alessio Podda <alessio@isc.org>
Date: Wed Sep 23 23:20:09 2026 +0200
Keep the zone database pointer separate from its lock cache lines
This commit ensures that the dblock and the db pointer won't
share a cache-line.
diff --git a/lib/dns/zone_p.h b/lib/dns/zone_p.h
index 6e8c992ea7..505263dd13 100644
--- a/lib/dns/zone_p.h
+++ b/lib/dns/zone_p.h
@@ -446,8 +446,9 @@ struct dns_zone {
const FILE *stream; /* loading from a stream? */
ISC_LIST(dns_include_t) includes; /* Include files */
- alignas(ISC_OS_CACHELINE_SIZE) isc_rwlock_t dblock;
+ /* Keep db before the aligned lock so they cannot share a cache line. */
dns_db_t *db; /* Locked by dblock */
+ alignas(ISC_OS_CACHELINE_SIZE) isc_rwlock_t dblock;
isc_tid_t tid;
/* Locked */