[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]

[perl #59960] bung in threads / perl 5.8.8 on AIX 5.2 / 5.3



# New Ticket Created by  Rainer Tammer 
# Please include the string:  [perl #59960]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=59960 >


Hello,
I have the following Perl version on AIX:

Summary of my perl5 (revision 5 version 8 subversion 8 patch 34489)
configuration:
  Platform:
    osname=aix, osvers=5.2.0.0, archname=aix-thread-multi-64all
    uname='aix build52 2 5 0040783A4C00 '
    config_args='-desrf config_tammer_64.sh -Dcc=cc_r -Dar=ar -X64
-Dldflags=-s -Dinstallprefix=/usr/opt/perl5_64 -Adefine:ld=cc_r -q64
-Adefine:ar=ar -X64 -Adefine:ccdlflags=-brtl -bdynamic
-Adefine:lddlflags=-b64 -bhalt:4 -bM:SRE -bexpall -G
-L/usr/opt/perl5_64/lib -bnoentry -lpthreads -lc_r -lm'
    hint=previous, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define
usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=define use64bitall=define uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc_r', ccflags ='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE
-qmaxmem=-1 -qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q64
-DUSE_64_BIT_ALL -q64',
    optimize='-O',
    cppflags='-D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=-1
-qnoansialias -DUSE_NATIVE_DLOPEN -DNEED_PTHREAD_INIT -q64
-DUSE_64_BIT_ALL -q64'
    ccversion='5.0.2.0', gccversion='', gccosandvers=''
    intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=87654321
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=8
    ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='cc_r -q64', ldflags =' -brtl -b64 -q64'
    libpth=/lib /usr/lib /usr/ccs/lib
    libs=-lbind -lnsl -ldbm -ldl -lld -lm -lcrypt -lpthreads -lc_r
    perllibs=-lbind -lnsl -ldl -lld -lm -lcrypt -lpthreads -lc_r
    libc=/lib/libc.a, so=a, useshrplib=true, libperl=libperl.a
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_aix.xs, dlext=so, d_dlsymun=undef, ccdlflags='-brtl
-bdynamic
-bE:/usr/opt/perl5_64/lib/5.8.8/aix-thread-multi-64all/CORE/perl.exp'
    cccdlflags=' ', lddlflags='-b64 -bhalt:4 -bM:SRE -bexpall -G
-L/usr/opt/perl5_64/lib -bnoentry -lpthreads -lc_r -lm'


Characteristics of this binary (from libperl):
  Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT USE_64_BIT_ALL
                        USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES
                        USE_PERLIO USE_REENTRANT_API
  Locally applied patches:
        MAINT34467
  Built under aix
  Compiled at Oct 17 2008 16:03:14
  @INC:
    /usr/opt/perl5_64/lib/5.8.8/aix-thread-multi-64all
    /usr/opt/perl5_64/lib/5.8.8
    /usr/opt/perl5_64/lib/site_perl/5.8.8/aix-thread-multi-64all
    /usr/opt/perl5_64/lib/site_perl/5.8.8
    .

All make test run fine, except the t/op/threads.t test.

I get a out of memory from this test.
This can be duplicated by:

#!/usr/opt/perl5_64/bin/perl

use threads;

threads->create(sub { eval '1' }) for 1..200;
print("Waiting for threads to finish\n");
$_->join() foreach (threads->list());

If I use "for 1..50;" the the error does not show up.

Bye
  Rainer Tammer


[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index][Thread Index][Top&Search][Original]