Skip Menu |
 
Report information
Id: 80782
Status: open
Priority: 0/
Queue: perl5

Owner: Nobody
Requestors: bdha [at] mirrorshades.net
Cc:
AdminCc:

Operating System: Solaris
PatchStatus: (no value)
Severity: medium
Type: core
Perl Version: 5.12.2
Fixed In: (no value)



Subject: 64bit Perl with -Dvendorprefix cause Module::Build and similar to segfault on Solaris using Sun Studio
Date: Tue, 14 Dec 2010 22:07:15 -0500
To: perlbug [...] perl.org
From: Bryan Horstmann-Allen <bdha [...] mirrorshades.net>
Download (untitled) / with headers
text/plain 5.6k
This is a bug report for perl from bda@mirrorshades.net, generated with the help of perlbug 1.39 running under perl 5.12.2. ----------------------------------------------------------------- [Please describe your issue here] # cc -V cc: Sun C 5.9 SunOS_i386 2007/05/03 # uname -a SunOS siege 5.11 snv_151a i86pc i386 i86pc # ./Configure -Dcc=cc -Dprefix=/opt/perl -DUuselargefiles -Accflags='-m64' -Aldflags='-m64' -Dvendorprefix=/opt/perl # make && make test ... cpan/ExtUtils-MakeMaker/t/basic................................# Failed test 'make test' # at t/basic.t line 108. # 'cp lib/Big/Dummy.pm blib/lib/Big/Dummy.pm # cp lib/Big/Liar.pm ../blib/lib/Big/Liar.pm # cp bin/program blib/script/program # /export/scratch/perl-5.12.2/cpan/ExtUtils-MakeMaker/../../t/perl "-I../../../../lib" "-I../../../../lib" -MExtUtils::MY -e 'MY->fixin(shift)' -- blib/script/program # PERL_DL_NONLAZY=1 /export/scratch/perl-5.12.2/cpan/ExtUtils-MakeMaker/../../t/perl "-I../../../../lib" "-I../../../../lib" "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t # *** Signal 11 - core dumped # make: Fatal error: Command failed for target `test_dynamic' # ' # doesn't match '(?-xism:All tests successful)' FAILED at test 22 ... Failed 15 tests out of 1689, 99.11% okay. ../cpan/ExtUtils-MakeMaker/t/basic.t ../cpan/Module-Build/t/basic.t ../cpan/Module-Build/t/compat.t ../cpan/Module-Build/t/perl_mb_opt.t ../cpan/Module-Build/t/runthrough.t ../cpan/Module-Build/t/test_file_exts.t ../cpan/Module-Build/t/test_type.t ../cpan/Module-Build/t/test_types.t ../cpan/Module-Build/t/xs.t ../cpan/Test-Harness/t/compat/env.t ../cpan/Test-Harness/t/compat/failure.t ../cpan/Test-Harness/t/compat/inc-propagation.t ../cpan/Test-Harness/t/compat/inc_taint.t ../cpan/Test-Harness/t/compat/regression.t ../cpan/Test-Harness/t/compat/test-harness-compat.t # pstack ./cpan/Module-Build/MB-OJI4JB0a/Simple/core core './cpan/Module-Build/MB-OJI4JB0a/Simple/core' of 6575: /export/scratch/perl-5.12.2/cpan/Module-Build/../../t/perl Build --mak 00000000004b1e1a Perl_av_store () + 2ea 00000000004e5c49 Perl_pp_push () + 369 00000000004b3eeb Perl_runops_standard () + 3b 000000000044e160 S_run_body () + d0 000000000044e08e ???????? () 00000000004385e5 main () + 95 00000000004383fc ???????? () ## ## Build without vendorprefix and all is happy. ## # ./Configure -Dcc=cc -Dprefix=/opt/perl -DUuselargefiles -Accflags='-m64' -Aldflags='-m64' ... cpan/ExtUtils-MakeMaker/t/basic................................ok ... All tests successful. u=3.92 s=2.09 cu=337.01 cs=46.68 scripts=1690 tests=349750 ## ## ## Building with 32bit and vendorprefix works fine. Building 64bit with vendorprefix using gcc is fine. I first noticed this issue when building 64bit perl@pkgsrc (2010q3), on Solaris using Studio 12.1. Works the same. rjbs@ has reproduced this bug. Cheers. [Please do not change anything below this line] ----------------------------------------------------------------- --- Flags: category=core severity=medium --- Site configuration information for perl 5.12.2: Configured by root at Tue Dec 14 20:57:31 EST 2010. Summary of my perl5 (revision 5 version 12 subversion 2) configuration: Platform: osname=solaris, osvers=2.11, archname=i86pc-solaris uname='sunos siege 5.11 snv_151a i86pc i386 i86pc ' config_args='-Dcc=cc -Dprefix=/opt/perl -Duselargefiles -Accflags=-m64 -Aldflags=-m64 -Accflags=-DAPPLLIB_EXP=\"/var/perl/site\"' hint=recommended, useposix=true, d_sigaction=define useithreads=undef, usemultiplicity=undef useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef use64bitint=define, use64bitall=undef, uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-m64 -DAPPLLIB_EXP="/var/perl/site" -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DPERL_USE_SAFE_PUTENV', optimize='-O', cppflags='-m64 -DAPPLLIB_EXP="/var/perl/site"' ccversion='Sun C 5.9 SunOS_i386 2007/05/03', gccversion='', gccosandvers='' intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='cc', ldflags =' -m64 -L/usr/lib -L/usr/ccs/lib -L/opt/SUNWspro/prod/lib -L/lib -L/usr/gnu/lib ' libpth=/usr/lib /usr/ccs/lib /opt/SUNWspro/prod/lib /lib /usr/gnu/lib libs=-lsocket -lnsl -ldl -lm -lc perllibs=-lsocket -lnsl -ldl -lm -lc libc=/lib/libc.so, so=so, useshrplib=false, libperl=libperl.a gnulibc_version='' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags=' ' cccdlflags='-KPIC', lddlflags='-G -m64 -L/usr/lib -L/usr/ccs/lib -L/opt/SUNWspro/prod/lib -L/lib -L/usr/gnu/lib' Locally applied patches: --- @INC for perl 5.12.2: lib /var/perl/site /opt/perl/lib/site_perl/5.12.2/i86pc-solaris /opt/perl/lib/site_perl/5.12.2 /opt/perl/lib/5.12.2/i86pc-solaris /opt/perl/lib/5.12.2 . --- Environment for perl 5.12.2: HOME=/root LANG (unset) LANGUAGE (unset) LD_LIBRARY_PATH (unset) LOGDIR (unset) PATH=/opt/perl/bin:/rpool/build/perl/base/bin:/usr/pkg/lib/perl5/site_perl/bin:/usr/pkg/lib/perl5/bin:/usr/pkg/lib/perl5/vendor_perl/bin:/usr/pkg/lib/perl5/bin:/usr/pkg/bin:/usr/pkg/sbin:/bin:/sbin:/usr/bin:/usr/sbin:/usr/ccs/bin:/usr/sfw/bin:/usr/sfw/sbin:/sw/bin:/sw/sbin:/opt/SUNWspro/bin PERL_BADLANG (unset) SHELL=/bin/bash -- bdha cyberpunk is dead. long live cyberpunk.
RT-Send-CC: perl5-porters [...] perl.org
Download (untitled) / with headers
text/plain 3.2k
On Tue Dec 14 19:07:13 2010, bdha@mirrorshades.net wrote: Show quoted text
> > This is a bug report for perl from bda@mirrorshades.net, > generated with the help of perlbug 1.39 running under perl 5.12.2. >
Show quoted text
> # cc -V > cc: Sun C 5.9 SunOS_i386 2007/05/03 > > # uname -a > SunOS siege 5.11 snv_151a i86pc i386 i86pc > > # ./Configure -Dcc=cc -Dprefix=/opt/perl -DUuselargefiles > -Accflags='-m64' -Aldflags='-m64' -Dvendorprefix=/opt/perl > > # make && make test > ... > cpan/ExtUtils-MakeMaker/t/basic................................# > Failed test 'make test' > # at t/basic.t line 108. > # 'cp lib/Big/Dummy.pm blib/lib/Big/Dummy.pm > # cp lib/Big/Liar.pm ../blib/lib/Big/Liar.pm > # cp bin/program blib/script/program > # /export/scratch/perl-5.12.2/cpan/ExtUtils-MakeMaker/../../t/perl "- > I../../../../lib" "-I../../../../lib" -MExtUtils::MY -e 'MY-
> >fixin(shift)' -- blib/script/program
> # PERL_DL_NONLAZY=1 /export/scratch/perl-5.12.2/cpan/ExtUtils- > MakeMaker/../../t/perl "-I../../../../lib" "-I../../../../lib" "- > MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', > 'blib/arch')" t/*.t > # *** Signal 11 - core dumped > # make: Fatal error: Command failed for target `test_dynamic' > # ' > # doesn't match '(?-xism:All tests successful)' > FAILED at test 22 > ... > Failed 15 tests out of 1689, 99.11% okay. > ../cpan/ExtUtils-MakeMaker/t/basic.t > ../cpan/Module-Build/t/basic.t > ../cpan/Module-Build/t/compat.t > ../cpan/Module-Build/t/perl_mb_opt.t > ../cpan/Module-Build/t/runthrough.t > ../cpan/Module-Build/t/test_file_exts.t > ../cpan/Module-Build/t/test_type.t > ../cpan/Module-Build/t/test_types.t > ../cpan/Module-Build/t/xs.t > ../cpan/Test-Harness/t/compat/env.t > ../cpan/Test-Harness/t/compat/failure.t > ../cpan/Test-Harness/t/compat/inc-propagation.t > ../cpan/Test-Harness/t/compat/inc_taint.t > ../cpan/Test-Harness/t/compat/regression.t > ../cpan/Test-Harness/t/compat/test-harness-compat.t > > # pstack ./cpan/Module-Build/MB-OJI4JB0a/Simple/core > core './cpan/Module-Build/MB-OJI4JB0a/Simple/core' of 6575: > /export/scratch/perl-5.12.2/cpan/Module-Build/../../t/perl Build > --mak > 00000000004b1e1a Perl_av_store () + 2ea > 00000000004e5c49 Perl_pp_push () + 369 > 00000000004b3eeb Perl_runops_standard () + 3b > 000000000044e160 S_run_body () + d0 > 000000000044e08e ???????? () > 00000000004385e5 main () + 95 > 00000000004383fc ???????? () > > ## > ## Build without vendorprefix and all is happy. > ## > > # ./Configure -Dcc=cc -Dprefix=/opt/perl -DUuselargefiles > -Accflags='-m64' -Aldflags='-m64' > ... > cpan/ExtUtils-MakeMaker/t/basic................................ok > ... > > All tests successful. > u=3.92 s=2.09 cu=337.01 cs=46.68 scripts=1690 tests=349750 > > ## > ## > ## > > Building with 32bit and vendorprefix works fine. Building 64bit with > vendorprefix using gcc is fine. > > I first noticed this issue when building 64bit perl@pkgsrc (2010q3), > on Solaris > using Studio 12.1. Works the same. > > rjbs@ has reproduced this bug.
rjbs: Is this specific to 64bit Solaris/Studio 12.1? Or have you reproduced it on other platforms? Thank you very much. Jim Keenan
RT-Send-CC: perl5-porters [...] perl.org
I believe this was boiled down to a bug in sun's cc's optimizer. I will try to find our records.


This service is sponsored and maintained by Best Practical Solutions and runs on Perl.org infrastructure.

For issues related to this RT instance (aka "perlbug"), please contact perlbug-admin at perl.org