Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Nov 2008 07:41:13 -0800
From:      Alfred Perlstein <alfred@freebsd.org>
To:        Ed Maste <emaste@freebsd.org>
Cc:        freebsd-threads@FreeBSD.org
Subject:   Re: threads/128180: pthread_cond_broadcast(3) lost wakeup
Message-ID:  <20081104154113.GP60438@elvis.mu.org>
In-Reply-To: <200811041440.mA4Ee31J084489@freefall.freebsd.org>
References:  <200811041440.mA4Ee31J084489@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
* Ed Maste <emaste@freebsd.org> [081104 06:40] wrote:
> The following reply was made to PR threads/128180; it has been noted by GNATS.
> 
> From: Ed Maste <emaste@freebsd.org>
> To: bug-followup@FreeBSD.org, kurt@intricatesoftware.com
> Cc:  
> Subject: Re: threads/128180: pthread_cond_broadcast(3) lost wakeup
> Date: Tue, 4 Nov 2008 09:09:38 -0500
> 
>  > The test program doesn't look correct to me. It seems possible
>  > for only a few of the threads (as little as 2) to do all the
>  > work. Thread 1 can start doing work, then wait for a broadcast.
>  > Thread 2 can start doing his work, then broadcast waking thread 1.
>  
>  It looks to me like the "tickets" and "finished" globals should make
>  the test program operate correctly.  If the scenario you describe
>  happens, thread 1 will just enter pthread_cond_wait again and wait
>  for the broadcast from the primordial thread.

This bug may have been fixed in 6-stable and 6.4.

http://svn.freebsd.org/viewvc/base?view=revision&revision=184172

Can you try upgrading?

-- 
- Alfred Perlstein



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20081104154113.GP60438>