Problems (and some solutions) with cyradm
Carson Gaspar
carson at taltos.org
Tue Oct 3 12:54:47 EDT 2006
--On Tuesday, October 03, 2006 9:15 AM -0700 Carson Gaspar
<carson at taltos.org> wrote:
> [ cyrus-imapd 2.3.7, cyrus-sasl 2.1.22, db 4.4.20, Solaris 10 x86,
> perl-5.8.8, Studio 11 ]
...
> The next bug I haven't tracked down yet. When I disconnect from a server
> (via disconnect or quit) cyradm perl dumps core. Here's a backtrace, but
> everything is compiled with optimization, so I don't trust it much...
> I'll gladly compile a full debugging perl/cyrus-imapd if folks think it
> would help.
OK, so under the debugging perl, it doesn't dump core. Unless I use "perl
-d", then it does. I hate heisenbugs... When it does dump core, it's pretty
consistent about the backtrace:
program terminated by signal SEGV (no mapping at the fault address)
0xfffffd7ff976cf14: realfree+0x00f4: cmpq %rdx,(%rbx)
Current function is Perl_safesysmalloc
78 ptr = (Malloc_t)PerlMem_malloc(size?size:1); /*
malloc(0) is NASTY on our system */
(dbx) where
[1] realfree(0xde9cf000, 0x0, 0xf0, 0xdbbce0, 0xdf2a60, 0x0), at
0xfffffd7ff976cf14
[2] cleanfree(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7ff976d60f
[3] _malloc_unlocked(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7ff976c8a9
[4] malloc(0x0, 0x0, 0x0, 0x0, 0x0, 0x0), at 0xfffffd7ff976c80d
=>[5] Perl_safesysmalloc(size = 8U), line 78 in "util.c"
[6] Perl_sv_grow(sv = 0xdc6780, newlen = 8U), line 1669 in "sv.c"
[7] Perl_sv_setsv_flags(dstr = 0xdc6780, sstr = 0x98c670, flags = 2),
line 4068 in "sv.c"
[8] Perl_sv_mortalcopy(oldstr = 0x98c670), line 6814 in "sv.c"
[9] Perl_pp_leave(), line 1824 in "pp_hot.c"
[10] Perl_runops_debug(), line 1459 in "dump.c"
[11] S_run_body(oldscope = 1), line 2366 in "perl.c"
[12] perl_run(my_perl = 0x62c620), line 2283 in "perl.c"
[13] main(argc = 9, argv = 0xfffffd7fffdff978, env = 0xfffffd7fffdff9c8),
line 99 in "perlmain.c"
(dbx) quit
--
Carson
More information about the Cyrus-devel
mailing list