Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

autouse + DProf == segmentation fault #8067

Closed
p5pRT opened this issue Aug 13, 2005 · 6 comments
Closed

autouse + DProf == segmentation fault #8067

p5pRT opened this issue Aug 13, 2005 · 6 comments

Comments

@p5pRT
Copy link

p5pRT commented Aug 13, 2005

Migrated from rt.perl.org#36896 (status was 'resolved')

Searchable as RT36896$

@p5pRT
Copy link
Author

p5pRT commented Aug 13, 2005

From at@altlinux.ru

Created by at@altlinux.org

$ perl -e 'use autouse qw(Pod​::Usage pod2usage); pod2usage'
Can't open -e for reading​: No such file or directory
at -e line 1
$ perl -d​:DProf -e 'use autouse qw(Pod​::Usage pod2usage); pod2usage'
Can't open -e for reading​: No such file or directory
at -e line 1
zsh​: segmentation fault (core dumped)
$

(gdb) bt
#0 0x4002371b in dprof_times () from /usr/lib/perl5/i386-linux/auto/Devel/DProf/DProf.so
#1 0x400239d6 in dprof_times () from /usr/lib/perl5/i386-linux/auto/Devel/DProf/DProf.so
#2 0x400c054e in Perl_leave_scope () from /usr/lib/libperl.so.5.8
#3 0x400c08c0 in Perl_pop_scope () from /usr/lib/libperl.so.5.8
#4 0x4004f9ea in Perl_init_argv_symbols () from /usr/lib/libperl.so.5.8
#5 0x40054796 in Perl_my_failure_exit () from /usr/lib/libperl.so.5.8
#6 0x400c2956 in Perl_die_where () from /usr/lib/libperl.so.5.8
#7 0x4008df61 in Perl_vdie () from /usr/lib/libperl.so.5.8
#8 0x4008e039 in Perl_die () from /usr/lib/libperl.so.5.8
#9 0x400c9e11 in Perl_pp_die () from /usr/lib/libperl.so.5.8
#10 0x4009af80 in Perl_runops_standard () from /usr/lib/libperl.so.5.8
#11 0x4004e083 in Perl_get_cv () from /usr/lib/libperl.so.5.8
#12 0x400526d8 in Perl_call_sv () from /usr/lib/libperl.so.5.8
#13 0x40023c1b in XS_DB_sub () from /usr/lib/perl5/i386-linux/auto/Devel/DProf/DProf.so
#14 0x400a0dae in Perl_pp_entersub () from /usr/lib/libperl.so.5.8
#15 0x4009af80 in Perl_runops_standard () from /usr/lib/libperl.so.5.8
#16 0x4004e083 in Perl_get_cv () from /usr/lib/libperl.so.5.8
#17 0x400526d8 in Perl_call_sv () from /usr/lib/libperl.so.5.8
#18 0x40023c1b in XS_DB_sub () from /usr/lib/perl5/i386-linux/auto/Devel/DProf/DProf.so
#19 0x400a0dae in Perl_pp_entersub () from /usr/lib/libperl.so.5.8
#20 0x4009af80 in Perl_runops_standard () from /usr/lib/libperl.so.5.8
#21 0x4004e083 in Perl_get_cv () from /usr/lib/libperl.so.5.8
#22 0x400526d8 in Perl_call_sv () from /usr/lib/libperl.so.5.8
#23 0x40023c1b in XS_DB_sub () from /usr/lib/perl5/i386-linux/auto/Devel/DProf/DProf.so
#24 0x400a0dae in Perl_pp_entersub () from /usr/lib/libperl.so.5.8
#25 0x4009af80 in Perl_runops_standard () from /usr/lib/libperl.so.5.8
#26 0x4005316d in perl_run () from /usr/lib/libperl.so.5.8
#27 0x08048afc in main ()
(gdb)

Perl Info

Flags:
    category=core
    severity=low

Site configuration information for perl v5.8.7:

Configured by ALT Linux Team at Fri Jun 17 03:47:29 MSD 2005.

Summary of my perl5 (revision 5 version 8 subversion 7) configuration:
  Platform:
    osname=linux, osvers=2.4.20-alt7-up, archname=i386-linux-thread-multi
    uname='linux solemn.turbinal.org 2.4.20-alt7-up #1 fri mar 14 14:57:05 msk 2003 i686 unknown unknown gnulinux '
    config_args='-de -rs -Darchname=i386-linux -Dd_dosuid -Ud_csh -Dlibswanted=dl m c crypt db ndbm gdbm -Duseshrplib -Dlibperl=libperl.so.5.8 -Dcc=gcc -Doptimize=-pipe -Wall -Os -march=i686 -D_GNU_SOURCE -momit-leaf-frame-pointer -Dcccdlflags=-fPIC -DPIC -Dccdlflags=-rdynamic -Wl,-O1 -Dlddlflags=-shared -Wl,-O1 -Dldflags=-Wl,-O1 -Dprefix=/usr -Dprivlib=/usr/lib/perl5 -Darchlib=/usr/lib/perl5/i386-linux -Dvendorprefix=/usr -Dvendorlib=/usr/lib/perl5/vendor_perl -Dvendorarch=/usr/lib/perl5/vendor_perl/i386-linux -Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3 -Dvendorman1dir=/usr/share/man/man1 -Dvendorman3dir=/usr/share/man/man3 -Dsiteprefix=/usr/local -Dsitelib=/usr/local/lib/perl5/site_perl/5.8.7 -Dsitearch=/usr/local/lib/perl5/site_perl/5.8.7/i386-linux -Dsiteman1dir=/usr/local/man/man1 -Dsite_man3dir=/usr/local/man/man3 -Dcf_by=ALT Linux Team -Dcf_email=Alexey Tourbin <at@altlinux.ru> -Dmyhostname=localhost -Dperladmin=root@localhost -Dmyuname=Linux 2.4.20-alt7-up i686 -Dnewmyuname=Linux 2.4.20-alt7-up i686 -Dinc_version_list=5.8.6/i386-linux 5.8.5/i386-linux 5.8.4/i386-linux 5.8.3/i386-linux 5.8.2/i386-linux 5.8.1/i386-linux 5.8.0/i386-linux 5.8.6 5.8.5 5.8.4 5.8.3 5.8.2 5.8.1 5.8.0 5.6.1 5.6.0 -Dpager=/usr/bin/less -isR -Di_shadow -Di_syslog -Dusethreads -Duseithreads -Duselargefiles -Di_db -Di_gdbm -Di_ndbm -Di_sdbm -Ui_odbm'
    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=undef use64bitall=undef uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm',
    optimize='-pipe -Wall -Os -march=i686 -D_GNU_SOURCE -momit-leaf-frame-pointer',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -fno-strict-aliasing -pipe -I/usr/local/include -I/usr/include/gdbm'
    ccversion='', gccversion='3.4.3 20050221 (ALT Linux, build 3.4.3-alt5)', 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 ='-Wl,-O1 -L/usr/local/lib64 -L/usr/local/lib'
    libpth=/usr/local/lib64 /usr/local/lib /lib64 /usr/lib64 /lib /usr/lib
    libs=-ldl -lm -lpthread -lc -lcrypt -ldb -lgdbm
    perllibs=-ldl -lm -lpthread -lc -lcrypt
    libc=/lib/libc-2.3.3.so, so=so, useshrplib=true, libperl=libperl.so.5.8
    gnulibc_version='2.3.3'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic -Wl,-O1'
    cccdlflags='-fPIC -DPIC', lddlflags='-shared -Wl,-O1 -L/usr/local/lib64 -L/usr/local/lib'

Locally applied patches:
    


@INC for perl v5.8.7:
    /etc/perl5
    /usr/lib/perl5/i386-linux
    /usr/lib/perl5
    /usr/local/lib/perl5/site_perl/5.8.7/i386-linux
    /usr/local/lib/perl5/site_perl/5.8.7
    /usr/local/lib/perl5/site_perl
    /usr/lib/perl5/vendor_perl/i386-linux
    /usr/lib/perl5/vendor_perl
    /usr/lib/perl5/vendor_perl
    .


Environment for perl v5.8.7:
    HOME=/home/at
    LANG=C
    LANGUAGE (unset)
    LC_COLLATE=ru_RU.CP1251
    LC_CTYPE=ru_RU.CP1251
    LC_MESSAGES=C
    LC_MONETARY=ru_RU.CP1251
    LC_NUMERIC=ru_RU.CP1251
    LC_TIME=C
    LD_LIBRARY_PATH (unset)
    LOGDIR (unset)
    PATH=/home/at/bin:/bin:/usr/bin:/usr/X11R6/bin:/usr/local/bin:/usr/games:/sbin:/usr/sbin:/usr/local/sbin:/usr/lib/qt3/bin
    PERL_BADLANG (unset)
    SHELL=/bin/zsh

@p5pRT
Copy link
Author

p5pRT commented Dec 7, 2011

From @jkeenan

On Sat Aug 13 16​:21​:21 2005, at@​altlinux.ru wrote​:

This is a bug report for perl from at@​altlinux.org,
generated with the help of perlbug 1.35 running under perl v5.8.7.

$ perl -e 'use autouse qw(Pod​::Usage pod2usage); pod2usage'
Can't open -e for reading​: No such file or directory
at -e line 1
$ perl -d​:DProf -e 'use autouse qw(Pod​::Usage pod2usage); pod2usage'
Can't open -e for reading​: No such file or directory
at -e line 1
zsh​: segmentation fault (core dumped)
$

Running your code on Darwin on Perl 5.14.2, I got the failure messages
but no segmentation fault.

###
[perl] 518 $ perl -e 'use autouse qw(Pod​::Usage pod2usage); pod2usage'
Can't open -e​: No such file or directory at -e line 1
[perl] 519 $ perl -d​:DProf -e 'use autouse qw(Pod​::Usage pod2usage);
pod2usage'
Can't open -e​: No such file or directory at -e line 1
###

But I should note that (a) Devel​::DProf is deprecated -- see its
documentation in Perl 5.14 -- so we're not fixing bugs in connection
with it; and (b) even if we were still supporting DProf, I would be
skeptical about it playing well with 'autouse'. After all, autouse's
documentation includes these warnings​:

###
Using "autouse" will move important steps of your program's execution
from compile time to runtime. This can

o Break the execution of your program if the module you "autouse"d
has some initialization which it expects to be done early.

o hide bugs in your code since important checks (like correctness of
prototypes) is moved from compile time to runtime.
...
###

I wouldn't expect any profiler to play well with this.

Thank you very much.
Jim Keenan

@p5pRT
Copy link
Author

p5pRT commented Dec 7, 2011

The RT System itself - Status changed from 'new' to 'open'

@p5pRT
Copy link
Author

p5pRT commented Jul 3, 2012

From @doy

Devel​::DProf is no longer a part of the perl core. I have forwarded this
ticket to its queue on rt.cpan.

-doy

@p5pRT
Copy link
Author

p5pRT commented Jul 3, 2012

From [Unknown Contact. See original ticket]

Devel​::DProf is no longer a part of the perl core. I have forwarded this
ticket to its queue on rt.cpan.

-doy

@p5pRT
Copy link
Author

p5pRT commented Jul 3, 2012

@doy - Status changed from 'open' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant