diff --git a/lib/dns/rbtdb.c b/lib/dns/rbtdb.c index 10706b4aa0..c5123748ad 100644 --- a/lib/dns/rbtdb.c +++ b/lib/dns/rbtdb.c @@ -2808,6 +2808,7 @@ findnodeintree(dns_rbtdb_t *rbtdb, dns_rbt_t *tree, const dns_name_t *name, * unlocking then relocking. */ __sync_synchronize(); + pthread_yield(); locktype = isc_rwlocktype_write; RWLOCK(&rbtdb->tree_lock, locktype); node = NULL;