dst_lib_destroy();
isc_event_free(&server->reload_event);
+ isc_mutex_destroy(&server->reload_event_lock);
INSIST(ISC_LIST_EMPTY(server->kasplist));
INSIST(ISC_LIST_EMPTY(server->viewlist));
isc_queue_destroy(worker->ievents);
isc_queue_destroy(worker->ievents_prio);
+ isc_mutex_destroy(&worker->lock);
+ isc_condition_destroy(&worker->cond);
+
isc_mem_put(mgr->mctx, worker->recvbuf,
ISC_NETMGR_RECVBUF_SIZE);
isc_thread_join(worker->thread, NULL);
isc_mem_free(sock->mgr->mctx, sock->ah_frees);
isc_mem_free(sock->mgr->mctx, sock->ah_handles);
+ isc_mutex_destroy(&sock->lock);
+ isc_condition_destroy(&sock->cond);
if (dofree) {
isc_nm_t *mgr = sock->mgr;
manager_free(isc__taskmgr_t *manager) {
for (unsigned int i = 0; i < manager->workers; i++) {
isc_mutex_destroy(&manager->queues[i].lock);
+ isc_condition_destroy(&manager->queues[i].work_available);
}
isc_mutex_destroy(&manager->lock);
+ isc_mutex_destroy(&manager->excl_lock);
isc_mutex_destroy(&manager->halt_lock);
+ isc_condition_destroy(&manager->halt_cond);
isc_mem_put(manager->mctx, manager->queues,
manager->workers * sizeof(isc__taskqueue_t));
manager->common.impmagic = 0;