[kris@obsecurity.org: named and KSE]
Daniel Eischen
deischen at freebsd.org
Mon Nov 1 21:14:50 PST 2004
On Mon, 1 Nov 2004, Kris Kennaway wrote:
> Ping
There's not a lot to go on by that comment. David Xu has been
working on a patch to fix a race condition that may prevent
loss of wakeup in pthread_cond_{timed}wait() so that may fix
the problem.
--
Dan Eischen
>
> ----- Forwarded message from Kris Kennaway <kris at obsecurity.org> -----
>
> Date: Sun, 24 Oct 2004 19:40:34 -0700
> From: Kris Kennaway <kris at obsecurity.org>
> To: current at freeBSD.org
> Subject: named and KSE
> User-Agent: Mutt/1.4.2.1i
>
> This SMP 5.3-STABLE system updated yesterday acts as a resolver for a
> bunch of package clients. I just got this message in the logs:
>
> Oct 25 01:45:00 <daemon.warn> pointyhat named[281]: *** POKED TIMER ***
>
> This comes from contrib/bind9/lib/isc/timer.c:
>
> /*
> * This is a temporary (probably) hack to fix a bug on tru64 5.1
> * and 5.1a. Sometimes, pthread_cond_timedwait() doesn't actually
> * return when the time expires, so here, we check to see if
> * we're 15 seconds or more behind, and if we are, we signal
> * the dispatcher. This isn't such a bad idea as a general purpose
> * watchdog, so perhaps we should just leave it in here.
> */
> if (signal_ok && timedwait) {
> isc_interval_t fifteen;
> isc_time_t then;
>
> isc_interval_set(&fifteen, 15, 0);
> isc_time_add(&manager->due, &fifteen, &then);
>
> if (isc_time_compare(&then, now) < 0) {
> SIGNAL(&manager->wakeup);
> signal_ok = ISC_FALSE;
> isc_log_write(isc_lctx, ISC_LOGCATEGORY_GENERAL,
> ISC_LOGMODULE_TIMER, ISC_LOG_WARNING,
> "*** POKED TIMER ***");
> }
> }
>
> and suggests it could be a threading bug.
>
> Kris
>
>
>
> ----- End forwarded message -----
>
--
Dan Eischen
More information about the freebsd-threads
mailing list