1118. [bug] On multithreaded servers, a race condition
could cause an assertion failure in resolver.c
during resolver shutdown. [RT #2029]
This commit is contained in:
4
CHANGES
4
CHANGES
@@ -1,3 +1,7 @@
|
||||
1118. [bug] On multithreaded servers, a race condition
|
||||
could cause an assertion failure in resolver.c
|
||||
during resolver shutdown. [RT #2029]
|
||||
|
||||
1117. [port] The configure check for in6addr_loopback incorrectly
|
||||
succeeded on AIX 4.3 when compiling with -O2
|
||||
because the test code was optimized away.
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
* WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*/
|
||||
|
||||
/* $Id: resolver.c,v 1.228 2001/11/04 19:20:39 gson Exp $ */
|
||||
/* $Id: resolver.c,v 1.229 2001/11/12 18:48:50 gson Exp $ */
|
||||
|
||||
#include <config.h>
|
||||
|
||||
@@ -1932,8 +1932,6 @@ fctx_doshutdown(isc_task_t *task, isc_event_t *event) {
|
||||
|
||||
FCTXTRACE("doshutdown");
|
||||
|
||||
fctx->attributes |= FCTX_ATTR_SHUTTINGDOWN;
|
||||
|
||||
/*
|
||||
* An fctx that is shutting down is no longer in ADDRWAIT mode.
|
||||
*/
|
||||
@@ -1958,6 +1956,8 @@ fctx_doshutdown(isc_task_t *task, isc_event_t *event) {
|
||||
|
||||
LOCK(&res->buckets[bucketnum].lock);
|
||||
|
||||
fctx->attributes |= FCTX_ATTR_SHUTTINGDOWN;
|
||||
|
||||
INSIST(fctx->state == fetchstate_active ||
|
||||
fctx->state == fetchstate_done);
|
||||
INSIST(fctx->want_shutdown);
|
||||
|
||||
Reference in New Issue
Block a user