Subject: | segfault in C:XSA, perl 5.12.2, linux/amd64 |
While tracking down test failures in some modules that use DBIx::Class, I discovered the cause was segfaults
from Class::XSAccessor.
For eg, HTML::FormHandler::Model::DBIC fails.
Manually running the test script (ie. perl -Ilib t/book.t) results in the following occuring, after code
gets into the END {} block.
*** glibc detected *** perl: realloc(): invalid pointer: 0x0000000001674838 ***
======= Backtrace: =========
/lib/libc.so.6(+0x775b6)[0x7f46229f65b6]
/lib/libc.so.6(realloc+0x352)[0x7f46229fd312]
/usr/local/strategic/perl/lib/site_perl/5.12.2/x86_64-linux-thread-
multi/auto/Class/XSAccessor/XSAccessor.so(get_hashkey_index+0x2a7)[0x7f46210dcb77]
/usr/local/strategic/perl/lib/site_perl/5.12.2/x86_64-linux-thread-
multi/auto/Class/XSAccessor/XSAccessor.so(XS_Class__XSAccessor_newxs_accessor+0x1db)[0x7f46210dd5cb]
perl(Perl_pp_entersub+0x530)[0x495c90]
perl(Perl_runops_standard+0x16)[0x4947d6]
perl(Perl_call_sv+0x4b7)[0x439a47]
perl(Perl_call_list+0x2ad)[0x439f1d]
perl(perl_destruct+0x170c)[0x43c3bc]
perl(main+0xcb)[0x421e7b]
/lib/libc.so.6(__libc_start_main+0xfd)[0x7f462299dc4d]
perl[0x421ce9]
======= Memory map: ========
00400000-0055c000 r-xp 00000000 fb:03 6828319 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/bin/perl
0075b000-0075c000 r--p 0015b000 fb:03 6828319 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/bin/perl
0075c000-00760000 rw-p 0015c000 fb:03 6828319 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/bin/perl
01674000-03e44000 rw-p 00000000 00:00 0 [heap]
7f461f7c8000-7f461f7de000 r-xp 00000000 fb:00 29039 /lib/libgcc_s.so.1
7f461f7de000-7f461f9dd000 ---p 00016000 fb:00 29039 /lib/libgcc_s.so.1
7f461f9dd000-7f461f9de000 r--p 00015000 fb:00 29039 /lib/libgcc_s.so.1
7f461f9de000-7f461f9df000 rw-p 00016000 fb:00 29039 /lib/libgcc_s.so.1
7f461f9df000-7f461f9e0000 ---p 00000000 00:00 0
7f461f9e0000-7f46201e0000 rw-p 00000000 00:00 0
7f46201e0000-7f462027c000 r-xp 00000000 fb:03 5914083 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/site_perl/5.12.2/x86_64-linux-thread-multi/auto/DBD/SQLite/SQLite.so
7f462027c000-7f462047c000 ---p 0009c000 fb:03 5914083 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/site_perl/5.12.2/x86_64-linux-thread-multi/auto/DBD/SQLite/SQLite.so
7f462047c000-7f462047e000 r--p 0009c000 fb:03 5914083 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/site_perl/5.12.2/x86_64-linux-thread-multi/auto/DBD/SQLite/SQLite.so
7f462047e000-7f4620480000 rw-p 0009e000 fb:03 5914083 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/site_perl/5.12.2/x86_64-linux-thread-multi/auto/DBD/SQLite/SQLite.so
7f4620480000-7f4620481000 rw-p 00000000 00:00 0
7f4620481000-7f462048a000 r-xp 00000000 fb:03 26325 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so
7f462048a000-7f4620689000 ---p 00009000 fb:03 26325 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so
7f4620689000-7f462068a000 r--p 00008000 fb:03 26325 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so
7f462068a000-7f462068b000 rw-p 00009000 fb:03 26325 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Data/Dumper/Dumper.so
7f462068b000-7f46206ac000 r-xp 00000000 fb:03 5915678 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/site_perl/5.12.2/x86_64-linux-thread-multi/auto/DBI/DBI.so
7f46206ac000-7f46208ab000 ---p 00021000 fb:03 5915678 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/site_perl/5.12.2/x86_64-linux-thread-multi/auto/DBI/DBI.so
7f46208ab000-7f46208ac000 r--p 00020000 fb:03 5915678 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/site_perl/5.12.2/x86_64-linux-thread-multi/auto/DBI/DBI.so
7f46208ac000-7f46208ad000 rw-p 00021000 fb:03 5915678 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/site_perl/5.12.2/x86_64-linux-thread-multi/auto/DBI/DBI.so
7f46208ad000-7f46208b0000 r-xp 00000000 fb:03 26231 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Cwd/Cwd.so
7f46208b0000-7f4620aaf000 ---p 00003000 fb:03 26231 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Cwd/Cwd.so
7f4620aaf000-7f4620ab0000 r--p 00002000 fb:03 26231 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Cwd/Cwd.so
7f4620ab0000-7f4620ab1000 rw-p 00003000 fb:03 26231 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Cwd/Cwd.so
7f4620ab1000-7f4620ac5000 r-xp 00000000 fb:03 26320 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Storable/Storable.so
7f4620ac5000-7f4620cc5000 ---p 00014000 fb:03 26320 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Storable/Storable.so
7f4620cc5000-7f4620cc6000 r--p 00014000 fb:03 26320 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Storable/Storable.so
7f4620cc6000-7f4620cc7000 rw-p 00015000 fb:03 26320 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Storable/Storable.so
7f4620cc7000-7f4620cca000 r-xp 00000000 fb:03 26294 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Fcntl/Fcntl.so
7f4620cca000-7f4620eca000 ---p 00003000 fb:03 26294 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Fcntl/Fcntl.so
7f4620eca000-7f4620ecb000 r--p 00003000 fb:03 26294 /home/tobyc/git/modern-
perl/system/lucid-amd64.new/lib/5.12.2/x86_64-linux-thread-multi/auto/Fcntl/Fcntl.so
Aborted