[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:
Platform:
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 '
config_args=''
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
Compiler:
cc='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE
-fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64',
optimize='-O2',
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',
lseeksize=8
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
gnulibc_version='2.3.2'
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):
Compile-time options: MULTIPLICITY PERL_DONT_CREATE_GVSV
PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP USE_ITHREADS
USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API
Built under linux
Compiled at Feb 7 2008 13:44:48
%ENV:
PERL_CORE="1"
@INC:
../lib
$ 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