[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#551903: libc6-i686 pthread_cond_wait fails to reacquire mutex upon cancellation



On Wed, Oct 21, 2009 at 07:11:40PM +0300, Remi Denis-Courmont wrote:
> Package: libc6-i686
> Version: 2.10.1-1
> Severity: critical
> Justification: breaks unrelated software
> 
> 
> 	Hello,
> 
> With the upgrade to 2.10.1, pthread_cond_wait() fails to re-acquire the
> provided mutex when acting on a deferred cancellation event from
> another thread. This is seen if (and apparently, only if) another thread
> acquires the same mutex after cancellation is initiated, but before the
> cancelled thread executes cancellation cleanup handlers.
> 
> I could not reproduce the problem with plain libc6. It only occurs with
> libc6-i686 installed.
> 
> I wrote a simple test case at:
> http://www.remlab.net/files/divers/condfail.c
> 

This test shows the same behaviour on both lenny and sid version, that
is it prints "1" and "2", but never triggers an assertion.

Are there other conditions for this test to fail?

-- 
Aurelien Jarno	                        GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net



Reply to: