perl5-dbi / dbi

DBI - The Perl 5 Database Interface

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

DBI seg fault in err_hash.

dnfm opened this issue · comments

I'm seeing the following in a seg fault from some code after a prove t/*.t in a project I'm working on. It appears to be after everything's finished running right before it exits (perhaps during destruction?)

segfault at c ip 00007fd84d6812ad sp 00007fff24597de0 error 4 in DBI.so[7fd84d674000+21000]

Here's what I got out of gdb:

Program terminated with signal 11, Segmentation fault.
#0  err_hash (imp_xxh=0xaf5fff38, imp_xxh=0xaf5fff38) at DBI.xs:864
864    if (SvOK(err_sv)) {
(gdb) bt
#0  err_hash (imp_xxh=0xaf5fff38, imp_xxh=0xaf5fff38) at DBI.xs:864
#1  0x00007fd84d6880ed in XS_DBI_dispatch (cv=0x3df4ac8) at DBI.xs:3551
#2  0x00007fd859801879 in Perl_pp_entersub () from /usr/local/gsgperl/tax-cbs/5.32.0/lib/perl5/x86_64-linux/CORE/libperl.so
#3  0x00007fd859758142 in Perl_call_sv () from /usr/local/gsgperl/tax-cbs/5.32.0/lib/perl5/x86_64-linux/CORE/libperl.so
#4  0x00007fd859805fc1 in S_curse () from /usr/local/gsgperl/tax-cbs/5.32.0/lib/perl5/x86_64-linux/CORE/libperl.so
#5  0x00007fd85980699d in Perl_sv_clear () from /usr/local/gsgperl/tax-cbs/5.32.0/lib/perl5/x86_64-linux/CORE/libperl.so
#6  0x00007fd859806ca0 in Perl_sv_free2 () from /usr/local/gsgperl/tax-cbs/5.32.0/lib/perl5/x86_64-linux/CORE/libperl.so
#7  0x00007fd859807681 in Perl_sv_clean_objs () from /usr/local/gsgperl/tax-cbs/5.32.0/lib/perl5/x86_64-linux/CORE/libperl.so
#8  0x00007fd85975ad5b in perl_destruct () from /usr/local/gsgperl/tax-cbs/5.32.0/lib/perl5/x86_64-linux/CORE/libperl.so
#9  0x0000000000400d0a in main (argc=19, argv=0x7fff24598658, env=0x7fff245986f8) at perlmain.c:138
(gdb) p err_sv
$1 = (SV *) 0x0

Unfortunately, the code is from a massive closed-source project, so I can't provide a small use-case to trigger it, but if there's anything else I can reasonably do to help, let me know.

This sounds like a dupe of #51.