ports/86687: Perl ithreads coredump

John Gillis zefram at zefram.net
Wed Sep 28 21:00:35 UTC 2005


>Number:         86687
>Category:       ports
>Synopsis:       Perl ithreads coredump
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Wed Sep 28 21:00:33 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator:     John Gillis
>Release:        FreeBSD 5.4-RELEASE-p1 i386
>Organization:
>Environment:
System: FreeBSD boobookittyfuck.devel.zefram.net 5.4-RELEASE-p1 FreeBSD 5.4-RELEASE-p1 #6: Mon May 23 02:29:18 EDT 2005 zefram at boobookittyfuck.devel.zefram.net:/usr/obj/usr/src/sys/BOOBOOKITTYFUCK i386

perl -V:

Summary of my perl5 (revision 5 version 8 subversion 7) configuration:
  Platform:
    osname=freebsd, osvers=5.4-release-p1, archname=i386-freebsd-thread-multi-64int
    uname='freebsd boobookittyfuck.devel.zefram.net 5.4-release-p1 freebsd 5.4-release-p1 #6: mon may 23 02:29:18 edt 2005 
zefram at boobookittyfuck.devel.zefram.net:usrobjusrsrcsysboobookittyfuck i386 '
    config_args='-sde -Dprefix=/usr/local -Darchlib=/usr/local/lib/perl5/5.8.7/mach -Dprivlib=/usr/local/lib/perl5/5.8.7 
-Dman3dir=/usr/local/lib/perl5/5.8.7/perl/man/man3 -Dman1dir=/usr/local/man/man1 -Dsitearch=/usr/local/lib/perl5/site_perl/5.8.7/mach 
-Dsitelib=/usr/local/lib/perl5/site_perl/5.8.7 -Dscriptdir=/usr/local/bin -Dsiteman3dir=/usr/local/lib/perl5/5.8.7/man/man3 -Dsiteman1dir=/usr/local/man/man1 
-Ui_malloc -Ui_iconv -Uinstallusrbinperl -Dcc=cc -Duseshrplib -Dccflags=-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.7/BSDPAN" -Doptimize=-O -pipe -march=athlon-xp 
-Ud_dosuid -Ui_gdbm -Dusethreads=y -Dusemymalloc=n -Duse64bitint'
    hint=recommended, 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=undef uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.7/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -I/usr/local/include',
    optimize='-O -pipe -march=athlon-xp',
    cppflags='-DAPPLLIB_EXP="/usr/local/lib/perl5/5.8.7/BSDPAN" -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -I/usr/local/include'
    ccversion='', gccversion='3.4.2 [FreeBSD] 20040728', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=12345678
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    alignbytes=4, prototype=define
  Linker and Libraries:
    ld='cc', ldflags ='-pthread -Wl,-E -L/usr/local/lib'
    libpth=/usr/lib /usr/local/lib
    libs=-lm -lcrypt -lutil
    perllibs=-lm -lcrypt -lutil
    libc=, so=so, useshrplib=true, libperl=libperl.so
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='  -Wl,-R/usr/local/lib/perl5/5.8.7/mach/CORE'
    cccdlflags='-DPIC -fPIC', lddlflags='-shared  -L/usr/local/lib'


Characteristics of this binary (from libperl):
  Compile-time options: MULTIPLICITY USE_ITHREADS USE_64_BIT_INT
                        USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
  Locally applied patches:
        defined-or
  Built under freebsd
  Compiled at Sep 23 2005 14:34:41
  @INC:
    /usr/local/lib/perl5/site_perl/5.8.7/mach
    /usr/local/lib/perl5/site_perl/5.8.7
    /usr/local/lib/perl5/site_perl/5.8.6
    /usr/local/lib/perl5/site_perl/5.8.5
    /usr/local/lib/perl5/site_perl
    /usr/local/lib/perl5/5.8.7/BSDPAN
    /usr/local/lib/perl5/5.8.7/mach
    /usr/local/lib/perl5/5.8.7
    .


	
>Description:
I have a program written in perl with ithreads that will randomly SIGSEGV. The multithreaded part starts
20 threads to download pages from websites. I have this backtrace from gdb:

#0  0x282d42b4 in flockfile () from /lib/libc.so.5
#1  0x282b30fa in fgets () from /lib/libc.so.5
#2  0x282ada74 in gethostent () from /lib/libc.so.5
#3  0x282adcc7 in _ht_gethostbyname () from /lib/libc.so.5
#4  0x282ad58b in nsdispatch () from /lib/libc.so.5
#5  0x282ac87a in gethostbyname2 () from /lib/libc.so.5
#6  0x282ac805 in gethostbyname () from /lib/libc.so.5
#7  0x283468cd in XS_Socket_inet_aton () from /usr/local/lib/perl5/5.8.7/mach/auto/Socket/Socket.so
#8  0x2810d80f in Perl_pp_entersub () from /usr/local/lib/perl5/5.8.7/mach/CORE/libperl.so
#9  0x28105729 in Perl_runops_standard () from /usr/local/lib/perl5/5.8.7/mach/CORE/libperl.so
#10 0x280a68bf in S_call_body () from /usr/local/lib/perl5/5.8.7/mach/CORE/libperl.so
#11 0x280a6655 in Perl_call_sv () from /usr/local/lib/perl5/5.8.7/mach/CORE/libperl.so
#12 0x28365c9c in Perl_ithread_run () from /usr/local/lib/perl5/5.8.7/mach/auto/threads/threads.so
#13 0x281fbb52 in pthread_mutexattr_init () from /usr/lib/libpthread.so.1
#14 0x00000000 in ?? ()

I'm sure that doesn't have enough information, as nothing has debug symbols turned on. If there's any more
information I can provide, I would be happy to. I set the priority to low, since I know this isn't a
production level feature.

	
>How-To-Repeat:
	
>Fix:

	


>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list