Skip Menu |

Preferred bug tracker

Please visit the preferred bug tracker to report your issue.

This queue is for tickets about the devel-nytprof CPAN distribution.

Report information
The Basics
Id: 53211
Status: resolved
Priority: 0/
Queue: devel-nytprof

People
Owner: Nobody in particular
Requestors: chidalgo [...] gmail.com
Cc: KENTNL [...] cpan.org
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Devel::NYTProf SegFault with 3.0, 3.1; works perfect with 2.10
Date: Tue, 29 Dec 2009 12:56:24 -0300
To: bug-devel-nytprof [...] rt.cpan.org
From: Claudio Hidalgo <chidalgo [...] gmail.com>
Hello: I installed the new Devel::NYTProf 3.1, but got a Segmentation fault with a script. With the same script Devel::NYTProf version 2.10 runs without any problems. I'm trying to debug what in the script could trigger the segfault; any hints would be welcome. perl version: 5.8.8 platform: Linux x86_64bit CentOS 5.4 Regards, -- chidalgo
It's hard to help you without more details.
Ideally enough detail to reproduce the problem myself.

Questions:
- Does it segfault if you use various permutations of the slowops=0 subs=0 and stmts=0 options options?

Please send me:
- Output of "perl -V" (capital V)
- The smallest example code that still core dumps
    (you can use the trace option to get an idea what part of your code is executing when the segfault happens)
- A stack trace from the core file would be very helpful
    (especially if you rebuild NYTProf using "perl Makefile.PL -g")

Thanks.

I've managed to find a test case for me that sounds much like the problem described in this bug report. It popped up for me while installing Task::Kensho during Makefile.PL. Reducing that Makefile.PL to the simplest case that still fails gives me this: #!/usr/bin/perl use strict; use warnings; use inc::Module::Install; requires "Devel::NYTProf"; requires "Term::ProgressBar::Simple"; auto_install; __END__ include /tmp/inc/Module/Install.pm include inc/Module/Install/Metadata.pm include inc/Module/Install/Base.pm include inc/Module/Install/AutoInstall.pm include inc/Module/Install/Include.pm include inc/Module/AutoInstall.pm *** Module::AutoInstall version 1.03 *** Checking for Perl dependencies... [Core Features] - Devel::NYTProf ...loaded. (3.01) - Term::ProgressBar::Simple ...loaded. (0.03) *** Module::AutoInstall configuration finished. Segmentation fault $ dmesg perl[1637]: segfault at 0 ip 00007f44033d1844 sp 00007fffc3128450 error 4 in NYTProf.so[7f44033bd000+1a000] Running under GDB gives me this: gdb --args perl egx.pl warning: Can not parse XML syscalls information; XML support was disabled at compile time. GNU gdb (Gentoo 7.0 p1) 7.0 Copyright (C) 2009 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-pc-linux-gnu". For bug reporting instructions, please see: <http://bugs.gentoo.org/>... Reading symbols from /usr/bin/perl...(no debugging symbols found)...done. (gdb) run Starting program: /usr/bin/perl egx.pl [Thread debugging using libthread_db enabled] include /tmp/inc/Module/Install.pm include inc/Module/Install/Metadata.pm include inc/Module/Install/Base.pm include inc/Module/Install/AutoInstall.pm include inc/Module/Install/Include.pm include inc/Module/AutoInstall.pm *** Module::AutoInstall version 1.03 *** Checking for Perl dependencies... [Core Features] - Devel::NYTProf ...loaded. (3.01) - Term::ProgressBar::Simple ...loaded. (0.03) *** Module::AutoInstall configuration finished. Program received signal SIGSEGV, Segmentation fault. 0x00007ffff5544844 in pp_subcall_profiler () from /usr/lib64/perl5/vendor_perl/5.10.1/x86_64-linux-thread-multi/Devel/auto/Devel/NYTProf/NYTProf.so (gdb) thread apply all bt full Thread 1 (Thread 0x7ffff7fb7700 (LWP 1715)): #0 0x00007ffff5544844 in pp_subcall_profiler () from /usr/lib64/perl5/vendor_perl/5.10.1/x86_64-linux-thread-multi/Devel/auto/Devel/NYTProf/NYTProf.so No symbol table info available. #1 0x00007ffff7b17576 in Perl_runops_standard () from /usr/lib/libperl.so.5.10 No symbol table info available. #2 0x00007ffff7abd530 in perl_run () from /usr/lib/libperl.so.5.10 No symbol table info available. #3 0x0000000000400dec in main () No symbol table info available. (gdb) $ perl -V Summary of my perl5 (revision 5 version 10 subversion 1) configuration: Platform: osname=linux, osvers=2.6.31-gentoo, archname=x86_64-linux-thread-multi uname='linux ember 2.6.31-gentoo #1 smp preempt tue sep 15 03:51:37 nzst 2009 x86_64 intel(r) core(tm)2 duo cpu t9300 @ 2.50ghz genuineintel gnulinux ' config_args='-des -Duseshrplib -Darchname=x86_64-linux-thread -Dcc=x86_64-pc-linux-gnu-gcc -Doptimize=-march=native -mtune=native -O2 -pipe --param l2-cache-size=3040 -mfpmath=sse -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msahf -floop-interchange -floop-strip-mine -floop-block -pg -Dscriptdir=/usr/bin -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dprivlib=/usr/lib64/perl5/5.10.1 -Darchlib=/usr/lib64/perl5/5.10.1/x86_64-linux-thread-multi -Dvendorlib=/usr/lib64/perl5/vendor_perl/5.10.1 -Dvendorarch=/usr/lib64/perl5/vendor_perl/5.10.1/x86_64-linux-thread-multi -Dsitelib=/usr/lib64/perl5/site_perl/5.10.1 -Dsitearch=/usr/lib64/perl5/site_perl/5.10.1/x86_64-linux-thread-multi -Dlibperl=libperl.so.5.10.1 -Dlocincpth= -Duselargefiles -Dd_semctl_semun -Dinc_version_list=5.10.0 5.10.0/x86_64-linux-thread-multi -Dcf_by=Gentoo -Dmyhostname=localhost -Dperladmin=root@localhost -Dinstallusrbinperl=n -Ud_csh -Uusenm -Dusethreads -Di_ndbm -Di_gdbm -Di_db -Dusrinc=/usr/include -Dlibpth=/usr/local/lib64 /lib64 /usr/lib64' hint=recommended, useposix=true, d_sigaction=define useithreads=define, usemultiplicity=define useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef use64bitint=define, use64bitall=define, uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='x86_64-pc-linux-gnu-gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-march=native -mtune=native -O2 -pipe --param l2-cache-size=3040 -mfpmath=sse -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msahf -floop-interchange -floop-strip-mine -floop-block -pg', cppflags='-D_REENTRANT -D_GNU_SOURCE -fno-strict-aliasing -pipe -fstack-protector' ccversion='', gccversion='4.4.1', 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='x86_64-pc-linux-gnu-gcc', ldflags =' -fstack-protector' libpth=/usr/local/lib64 /lib64 /usr/lib64 libs=-lpthread -lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc -lgdbm_compat perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc libc=/lib/libc-2.10.1.so, so=so, useshrplib=true, libperl=libperl.so.5.10.1 gnulibc_version='2.10.1' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E' cccdlflags='-fPIC', lddlflags='-shared -march=native -mtune=native -O2 -pipe --param l2-cache-size=3040 -mfpmath=sse -mmmx -msse -msse2 -msse3 -mssse3 -msse4.1 -msahf -floop-interchange -floop-strip-mine -floop-block -pg -fstack-protector' Characteristics of this binary (from libperl): Compile-time options: MULTIPLICITY PERL_DONT_CREATE_GVSV PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP USE_64_BIT_ALL USE_64_BIT_INT USE_ITHREADS USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API Built under linux Compiled at Sep 29 2009 01:40:44 %ENV: PERL5LIB="/home/kent/.perl/lib/perl5:/home/kent/.perl/lib/perl5/x86_64-linux:" PERL5LIB_O="" PERL_MM_OPT="INSTALL_BASE=/home/kent/.perl" PERL_MM_OPT_O="" @INC: /home/kent/.perl/lib/perl5/x86_64-linux-thread-multi /home/kent/.perl/lib/perl5 /home/kent/.perl/lib/perl5/x86_64-linux /usr/lib64/perl5/site_perl/5.10.1/x86_64-linux-thread-multi /usr/lib64/perl5/site_perl/5.10.1 /usr/lib64/perl5/site_perl /usr/lib64/perl5/vendor_perl/5.10.1/x86_64-linux-thread-multi /usr/lib64/perl5/vendor_perl/5.10.1 /usr/lib64/perl5/vendor_perl /usr/lib64/perl5/5.10.1/x86_64-linux-thread-multi /usr/lib64/perl5/5.10.1
Subject: Re: [rt.cpan.org #53211] Devel::NYTProf SegFault with 3.0, 3.1; works perfect with 2.10
Date: Fri, 22 Jan 2010 10:15:09 -0300
To: bug-devel-nytprof [...] rt.cpan.org
From: Claudio Hidalgo <chidalgo [...] gmail.com>
Show quoted text
> It's hard to help you without more details. > Ideally enough detail to reproduce the problem myself. > > Questions: > - Does it segfault if you use various permutations of the slowops=0 subs=0 and > stmts=0 options options?
Ok, i managed to isolate the problem, and i think is related with a module with Autoloader. NYTProf dies in the DESTROY() part of the module. with subs=0 NYTProf does work (but is useless :) ) -- chidalgo
Subject: Re: [rt.cpan.org #53211] Devel::NYTProf SegFault with 3.0, 3.1; works perfect with 2.10
Date: Fri, 22 Jan 2010 19:19:32 +0000
To: Claudio Hidalgo via RT <bug-devel-nytprof [...] rt.cpan.org>
From: Tim Bunce <Tim.Bunce [...] pobox.com>
On Fri, Jan 22, 2010 at 08:15:31AM -0500, Claudio Hidalgo via RT wrote: Show quoted text
> Queue: devel-nytprof > Ticket <URL: https://rt.cpan.org/Ticket/Display.html?id=53211 > >
> > It's hard to help you without more details. > > Ideally enough detail to reproduce the problem myself. > > > > Questions: > > - Does it segfault if you use various permutations of the slowops=0 subs=0 and > > stmts=0 options options?
> > Ok, i managed to isolate the problem, and i think is related with a > module with Autoloader. NYTProf dies in the DESTROY() part of the > module. > > with subs=0 NYTProf does work (but is useless :) )
Ok. Try leave=0 and/or slowops=0. Still, even then I really can't help much without either a stack trace from from an NYTProf built with "perl Makefile.PL -g" or, ideally, a small test case I can use to reproduce the fault locally. Tim.
Subject: Re: [rt.cpan.org #53211] Devel::NYTProf SegFault with 3.0, 3.1; works perfect with 2.10
Date: Fri, 22 Jan 2010 16:46:32 -0300
To: bug-devel-nytprof [...] rt.cpan.org
From: Claudio Hidalgo <chidalgo [...] gmail.com>
Show quoted text
> Ok. Try leave=0 and/or slowops=0. > > Still, even then I really can't help much without either a stack trace > from from an NYTProf built with "perl Makefile.PL -g" or, ideally, > a small test case I can use to reproduce the fault locally.
working on a small test case that fails :) i'll try the other options. Thanks, -- chidalgo
I'm going to close this for now. Please retest with 3.01_91 (or later) and open a new ticket, with more details, if it fails. Thanks.