Skip Menu |

This queue is for tickets about the namespace-local CPAN distribution.

Report information
The Basics
Id: 128050
Status: resolved
Priority: 0/
Queue: namespace-local

People
Owner: khedin [...] cpan.org
Requestors: SREZIC [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: 0.07_01
Fixed in: 0.07_07



Subject: Segmentation fault with perl 5.10.1
t/09-destroy.t fails with a segmentation fault with perl 5.10.1. All other perls seem to be fine on my smokers, even perl 5.8.9.
Thanks. I'm looking into it, have no idea how I did it though.
On 2018-12-18 16:46:48, Dallaylaen wrote: Show quoted text
> Thanks. I'm looking into it, have no idea how I did it though.
Here's a stack backtrace, unfortunately only with a non-debugging perl: Core was generated by `perl5.10.1 -Mblib t/09-destroy.t'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00000000004371e4 in Perl_Gv_AMupdate () (gdb) bt (gdb) bt #0 0x00000000004371e4 in Perl_Gv_AMupdate () #1 0x000000000048bb88 in Perl_sv_bless () #2 0x00000000004958b3 in Perl_pp_bless () #3 0x000000000047b71d in Perl_runops_standard () #4 0x000000000042fb30 in perl_run () #5 0x000000000041c764 in main ()
On 2018-12-18 17:03:01, SREZIC wrote: Show quoted text
> On 2018-12-18 16:46:48, Dallaylaen wrote:
> > Thanks. I'm looking into it, have no idea how I did it though.
> > Here's a stack backtrace, unfortunately only with a non-debugging perl: > > Core was generated by `perl5.10.1 -Mblib t/09-destroy.t'. > Program terminated with signal SIGSEGV, Segmentation fault. > #0 0x00000000004371e4 in Perl_Gv_AMupdate () > (gdb) bt > (gdb) bt > #0 0x00000000004371e4 in Perl_Gv_AMupdate () > #1 0x000000000048bb88 in Perl_sv_bless () > #2 0x00000000004958b3 in Perl_pp_bless () > #3 0x000000000047b71d in Perl_runops_standard () > #4 0x000000000042fb30 in perl_run () > #5 0x000000000041c764 in main ()
valgrind says pretty much the same: ==5410== Process terminating with default action of signal 11 (SIGSEGV): dumping core ==5410== Access not within mapped region at address 0x4 ==5410== at 0x4371E4: Perl_Gv_AMupdate (in /bbbike/perl-5.10.1/bin/perl) ==5410== by 0x48BB87: Perl_sv_bless (in /bbbike/perl-5.10.1/bin/perl) ==5410== by 0x4958B2: Perl_pp_bless (in /bbbike/perl-5.10.1/bin/perl) ==5410== by 0x47B71C: Perl_runops_standard (in /bbbike/perl-5.10.1/bin/perl) ==5410== by 0x42FB2F: perl_run (in /bbbike/perl-5.10.1/bin/perl) ==5410== by 0x41C763: main (in /bbbike/perl-5.10.1/bin/perl)
It looks like overwriting a glob without immediately re-adding a scalar ref to it was causing this. Worked at least with DESTROY and OVERLOAD. I added a workaround before 0.07_07, and I was unable to see a segfault since. Thank you for your contribution.