Bug#743184: Acknowledgement (perl: SpamAssassin spamd segfaults since updating servers to Debian wheezy)
Martin von Wittich
martin.von.wittich at iserv.eu
Tue Apr 1 14:51:39 UTC 2014
OK, I've figured out how to determine what perl has been executing when it crashed:
host ~ # for i in /var/crash/0/*perl.core; do echo "p my_perl->Icurcop->cop_file\np my_perl->Icurcop->cop_line" | gdb --silent /usr/bin/perl $i 2>/dev/null | grep 'gdb'; done
(gdb) $1 = 0xa3887f8 "/usr/share/perl5/Mail/SpamAssassin/Plugin/iXhash.pm"
(gdb) $2 = 75
(gdb) quit
(gdb) $1 = 0xa3887f8 "/usr/share/perl5/Mail/SpamAssassin/Plugin/iXhash.pm"
(gdb) $2 = 75
(gdb) quit
(gdb) $1 = 0xb50f400 "/usr/share/perl5/Mail/SpamAssassin/Plugin/iXhash.pm"
(gdb) $2 = 75
(gdb) quit
(gdb) $1 = 0xb50f400 "/usr/share/perl5/Mail/SpamAssassin/Plugin/iXhash.pm"
(gdb) $2 = 75
(gdb) quit
(gdb) $1 = 0xb084d68 "/usr/share/perl5/Mail/SpamAssassin/Plugin/iXhash.pm"
(gdb) $2 = 75
(gdb) quit
(gdb) $1 = 0x9772fb8 "/usr/share/perl5/Mail/SpamAssassin/Plugin/iXhash.pm"
(gdb) $2 = 75
(gdb) quit
[...]
Apparently all crashes on this machine are caused by that exact location,
except for a single crash:
(gdb) $1 = 0xc0699b0 "(eval 1231)"
(gdb) $2 = 3325
(gdb) quit
The file ixHash.pm is part of the iXhash SA module[1] that we've packaged
ourselves. I've published our (probably ancient) version of the file on
paste.debian.net[2]. Unfortunately, line 75 is a huge eval, and I don't know
yet how to pinpoint the exact location in that eval that causes the issue.
[1] http://www.ixhash.net/
[2] http://paste.debian.net/90973/
More information about the Perl-maintainers
mailing list