2
0
mirror of https://gitlab.isc.org/isc-projects/bind9 synced 2025-08-31 06:25:31 +00:00

- Access netmgr worker->finished under worker lock only

- Join network worker thread to silence tsan
This commit is contained in:
Witold Kręcicki
2019-11-26 15:21:25 +01:00
parent d0bc45be17
commit bf2cc19b04

View File

@@ -198,6 +198,7 @@ nm_destroy(isc_nm_t **mgr0) {
int r = uv_loop_close(&mgr->workers[i].loop);
INSIST(r == 0);
isc_queue_destroy(mgr->workers[i].ievents);
isc_thread_join(mgr->workers[i].thread, NULL);
}
isc_condition_destroy(&mgr->wkstatecond);
@@ -424,9 +425,10 @@ nm_thread(void *worker0) {
atomic_store(&worker->mgr->paused, false);
}
}
bool finished = worker->finished;
UNLOCK(&worker->lock);
if (worker->finished) {
if (finished) {
/*
* We need to launch the loop one more time
* in UV_RUN_NOWAIT mode to make sure that