develooper Front page | perl.perl5.porters | Postings from May 2012

[perl #40382] threads: deadlock occured on creation of a thread while joining others

From:
Brian Fraser via RT
Date:
May 25, 2012 16:36
Subject:
[perl #40382] threads: deadlock occured on creation of a thread while joining others
Message ID:
rt-3.6.HEAD-7788-1337988962-1551.40382-15-0@perl.org
On Fri Sep 22 08:20:59 2006, jdhedden@yahoo.com wrote:
> Tsutomu IKEGAMI reported:
> > There seems to be a potential deadlock situation on creating a new
> > ithread while destructing (or joining) others.  The attached sample
> > code occasionally freezed on dual Opteron machine running under SuSE
> > Linux 9.3 / perl5.8.8.  Stack traces obtained by gdb are appended.
> 
> I was not able to reproduce the problem using ActivePerl 5.8.8
> (original threads version and 1.42), or Perl 5.8.8 under Cygwin or
> Solaris (threads 1.42).
> 
> It would be helpful to know if you can repeat this problem using the
> lastest versions of 'threads' (v1.42) and 'threads::shared' (v1.03)
> from CPAN.  threads 1.41 contained changes that tried to eliminate
> deadlock/race conditions.
> 
> If deadlock occurs with 1.42, gdb stack traces would be helpful.
> Thanks.
> 
> > Perl5.9.4 is much robust, but it rarely failed with SEGV when the
> > constant N was increased to 10.  Investigation with gdb indicated
> that
> > the SEGV happened in a similar situation, that is, one ithread is
> > under destruction and another under creation.
> 
> I was able to use N=50 under ActivePerl, N=350 (!) under Cyginw
> and N=40 on Solaris.  Again, with no deadlocks.
> 
> __________________________________________________
> Do You Yahoo!?
> Tired of spam?  Yahoo! Mail has the best spam protection around 
> http://mail.yahoo.com 
> 

I can reproduce the deadlock on 5.8.8, but not on anything newer; I even
tried upping N to 1000, and nothing. Should this ticket be closed?

--hugmeir


---
via perlbug:  queue: perl5 status: open
https://rt.perl.org:443/rt3/Ticket/Display.html?id=40382



nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About