[Chicago-talk] perl test harness failures

Whitney Jackson whjackson at gmail.com
Fri Feb 8 09:30:30 PST 2008

Thanks Steven.  Here's the info you requested.  I'll give -O0 a try
and let you know what happens.

$ uname -a
Linux xxxxxxxxx 2.4.21-40.ELsmp #1 SMP Thu Feb 2 22:22:39 EST 2006
i686 i686 i386 GNU/Linux

$ ./perl -MTestInit -V
Summary of my perl5 (revision 5 version 10 subversion 0) configuration:
    osname=linux, osvers=2.4.21-40.elsmp, archname=i686-linux-thread-multi
    uname='linux xxxxxxxxx 2.4.21-40.elsmp #1 smp thu feb 2 22:22:39
est 2006 i686 i686 i386 gnulinux '
    hint=recommended, useposix=true, d_sigaction=define
    useithreads=define, usemultiplicity=define
    useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
    use64bitint=undef, use64bitall=undef, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
    cc='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE
-fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE
    cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe'
    ccversion='', gccversion='3.3.2', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
    alignbytes=4, prototype=define
  Linker and Libraries:
    ld='gcc', ldflags =''
    libpth=/lib /usr/lib
    libs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc -lrt
    perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc -lrt
    libc=/lib/libc-2.3.2.so, so=so, useshrplib=false, libperl=libperl.a
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fPIC', lddlflags='-shared -O2'

Characteristics of this binary (from libperl):
  Built under linux
  Compiled at Feb  7 2008 13:44:48

$ ldd ./perl
        libnsl.so.1 => /lib/libnsl.so.1 (0x0021a000)
        libdl.so.2 => /lib/libdl.so.2 (0x00a67000)
        libm.so.6 => /lib/tls/libm.so.6 (0x00ba7000)
        libcrypt.so.1 => /lib/libcrypt.so.1 (0x00244000)
        libutil.so.1 => /lib/libutil.so.1 (0x00383000)
        libpthread.so.0 => /lib/tls/libpthread.so.0 (0x00edf000)
        libc.so.6 => /lib/tls/libc.so.6 (0x00386000)
        librt.so.1 => /lib/tls/librt.so.1 (0x00111000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x00e45000)

On Feb 8, 2008 10:22 AM, Steven Lembark <lembark at wrkhors.com> wrote:
> Whitney Jackson wrote:
> > I just compiled perl-5.10.0 on a Linux box at work and ran 'make test'
> > (partial output below).  Most tests worked but a significant number
> > didn't.  All the failed tests bomb w/ seg faults.  All seem to be
> > related to signal handling/IPC.  By peeling away the successful parts
> > of one test file I found I could reproduce the seg fault with this one
> > liner:
> >
> > $ ./perl -MTestInit -e 'pipe(R, W); close R; $SIG{PIPE} = sub {}; print W "_";'
> > zsh: segmentation fault  ./perl -MTestInit -e
> >
> > Can anyone recommend a strategy for addressing this sort of problem?
> More able to help with:
> - What O/S (i.e., uname -a output)?
> - What compiler switches (i.e., 'perl -V' output)?
> In the meantime, try compiling the thing with
> '-O0' and see if the result changes (may be a
> pain depending compile time). Optimizing the
> snot out of perl may have pushed it over the
> edge (e.g., I used -O3 w/ remove statck frames,
> but it worked and re-compiling it only takes a
> few minutes).
> You might also take a look at which lib's ./perl
> is linked with (e.g., via ldd) and see if any of
> them have known issues with reads on closed pipes.
> --
> Steven Lembark                                          +1 888 359 3508
> Workhorse Computing                                       85-09 90th St
> lembark at wrkhors.com                                 Woodhaven, NY 11421
> _______________________________________________
> Chicago-talk mailing list
> Chicago-talk at pm.org
> http://mail.pm.org/mailman/listinfo/chicago-talk

More information about the Chicago-talk mailing list