diff --git a/lib/dns/rbtdb.c b/lib/dns/rbtdb.c index 3d16d45bf4..10706b4aa0 100644 --- a/lib/dns/rbtdb.c +++ b/lib/dns/rbtdb.c @@ -2807,6 +2807,7 @@ findnodeintree(dns_rbtdb_t *rbtdb, dns_rbt_t *tree, const dns_name_t *name, * It would be nice to try to upgrade the lock instead of * unlocking then relocking. */ + __sync_synchronize(); locktype = isc_rwlocktype_write; RWLOCK(&rbtdb->tree_lock, locktype); node = NULL;