fix: dev: Fix invalid cache-line padding for qpcache buckets

The isc_queue_t was missing in the calculation of the required
padding size inside the qpcache bucket structure.

Merge branch 'ondrej/qpcache-fix-invalid-padding' into 'main'

See merge request isc-projects/bind9!10306
This commit is contained in:
Ondřej Surý 2025-03-25 09:56:49 +00:00
commit 7861042a27

View file

@ -238,8 +238,8 @@ typedef struct qpcache_bucket {
/* Padding to prevent false sharing between locks. */
uint8_t __padding[ISC_OS_CACHELINE_SIZE -
(sizeof(dns_slabheaderlist_t) + sizeof(isc_heap_t *) +
sizeof(isc_rwlock_t)) %
(sizeof(isc_queue_t) + sizeof(isc_rwlock_t) +
sizeof(dns_slabheaderlist_t) + sizeof(isc_heap_t *)) %
ISC_OS_CACHELINE_SIZE];
} qpcache_bucket_t;