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

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

Brian Fraser via RT
May 25, 2012 16:36
[perl #40382] threads: deadlock occured on creation of a thread while joining others
Message ID:
On Fri Sep 22 08:20:59 2006, 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 

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?


via perlbug:  queue: perl5 status: open Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at | Group listing | About