From: Mark Andrews Date: Sat, 14 Jan 2017 02:12:00 +0000 (+1100) Subject: 4554. [bug] Remove double unlock in dns_dispatchmgr_setudp. X-Git-Tag: v9.12.0a1~524 X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=5dfa5221d54df64694cb7b2be537d3e30e20d569;p=thirdparty%2Fbind9.git 4554. [bug] Remove double unlock in dns_dispatchmgr_setudp. [RT #44336] --- diff --git a/CHANGES b/CHANGES index f3b6a3c9c76..c28d3f6faea 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +4554. [bug] Remove double unlock in dns_dispatchmgr_setudp. + [RT #44336] + 4553. [bug] Named could deadlock there were multiple changes to NSEC/NSEC3 parameters for a zone being processed at the same time. [RT #42770] diff --git a/lib/dns/dispatch.c b/lib/dns/dispatch.c index 383b2a4287e..4a7e2d478d1 100644 --- a/lib/dns/dispatch.c +++ b/lib/dns/dispatch.c @@ -2077,10 +2077,9 @@ dns_dispatchmgr_setudp(dns_dispatchmgr_t *mgr, } result = isc_mempool_create(mgr->mctx, sizeof(dispsocket_t), &mgr->spool); - if (result != ISC_R_SUCCESS) { - UNLOCK(&mgr->buffer_lock); + if (result != ISC_R_SUCCESS) goto cleanup; - } + isc_mempool_setname(mgr->spool, "dispmgr_spool"); isc_mempool_setmaxalloc(mgr->spool, maxrequests); isc_mempool_setfreemax(mgr->spool, maxrequests);