Subject: Re: "parked" processes?
To: None <current-users@netbsd.org>
From: Andrew Doran <ad@netbsd.org>
List: current-users
Date: 08/07/2007 20:19:58
On Tue, Aug 07, 2007 at 06:16:21PM +0100, Andrew Doran wrote:

> I think I found the bug. If a thread calls pthread_cond_timedwait(), and the
> computed wakeup time is less than 1 microsecond into the future, then the
> thread can sleep indefinitely. I'm testing a fix at the moment..

Ok, I have checked in a fix. I can no longer reproduce the problem using a
test case that I was given, although admittedly it does not involve Firefox
but instead dynamips (a Cisco emulator). You'll need kernel 4.99.27. I
recommend building the latest libc and libpthread just to be sure. libpthread
ident is below.

Apologies for the disruption - hopefully this will be the end of it.

Andrew

     $NetBSD: sem.c,v 1.15 2007/08/04 13:37:50 ad Exp $
     $NetBSD: sched.c,v 1.4 2005/10/09 11:17:28 kleink Exp $
     $NetBSD: pthread_tsd.c,v 1.2 2003/09/29 09:50:22 wiz Exp $
     $NetBSD: pthread_stack.c,v 1.20 2007/03/02 18:53:54 ad Exp $
     $NetBSD: pthread_rwlock.c,v 1.19 2007/08/04 13:37:50 ad Exp $
     $NetBSD: pthread_mutex.c,v 1.29 2007/08/04 13:37:49 ad Exp $
     $NetBSD: pthread_misc.c,v 1.1 2007/03/02 18:53:52 ad Exp $
     $NetBSD: pthread_cancelstub.c,v 1.14 2007/03/04 20:07:13 ad Exp $
     $NetBSD: pthread_lock.c,v 1.21 2007/08/04 13:37:49 ad Exp $
     $NetBSD: pthread_cond.c,v 1.33 2007/08/07 19:04:21 ad Exp $
     $NetBSD: pthread_barrier.c,v 1.13 2007/08/04 13:37:49 ad Exp $
     $NetBSD: pthread.c,v 1.72 2007/08/07 19:04:21 ad Exp $
     $NetBSD: pthread_md.c,v 1.3 2003/03/08 08:03:37 lukem Exp $
     $NetBSD: pthread_debug.c,v 1.12 2007/03/02 18:53:52 ad Exp $
     $NetBSD: pthread_specific.c,v 1.10 2003/08/13 18:52:01 nathanw Exp $
     $NetBSD: pthread_attr.c,v 1.5 2005/09/21 15:27:14 tv Exp $