[Dovecot] kevent changes (was Re: 1.0 RC1 status)
Scott Ellis
scotte at warped.com
Tue Jul 11 02:07:50 EEST 2006
Scott Ellis wrote:
> Timo Sirainen wrote:
>> On Wed, 2006-06-21 at 17:23 -0700, Scott Ellis wrote:
[snip]
>> Well, these aren't good anyway.. Would be nice to know where those came
>> from. If you want you could change i_error calls to i_panic in
>> src/lib/ioloop-kqueue.c and then get gdb backtraces when it crashes
>> (http://dovecot.org/bugreport.html)
>>
[snip]
Okay, I updated to GBD6.5 and now get something more useful, but still
pretty useless. :-)
Maillog reports:
Jul 10 15:57:44 intrepid dovecot: Dovecot v1.0.rc2 starting up
Jul 10 15:57:51 intrepid dovecot: auth(default): kevent(10) in
io_loop_handle_re
move failed: Bad file descriptor
Jul 10 15:57:51 intrepid dovecot: child 27097 (auth) killed with signal 6
Jul 10 15:57:52 intrepid dovecot: auth(default): kevent(11) in
io_loop_handle_re
move failed: Bad file descriptor
Jul 10 15:57:52 intrepid dovecot: child 16934 (auth) killed with signal 6
"gdb /software/dovecot-1.0rc2.debug/libexec/dovecot/dovecot-auth
/var/run/dovecot/dovecot-auth.core" yields:
(gdb) bt full
#0 0x00007f7ffda2bc1e in kill () from /usr/lib/libc.so.12
No symbol table info available.
#1 0x00007f7ffdab8529 in abort () from /usr/lib/libc.so.12
No symbol table info available.
#2 0x0000000000419639 in i_internal_panic_handler ()
No symbol table info available.
#3 0x000000000041996c in i_panic ()
No symbol table info available.
#4 0x000000000041ced7 in io_loop_handle_remove ()
No symbol table info available.
#5 0x000000000041c22c in io_remove ()
No symbol table info available.
#6 0x00000000004135ec in checkpassword_request_close ()
No symbol table info available.
#7 0x0000000000413b3f in checkpassword_child_input ()
No symbol table info available.
#8 0x000000000041cd35 in io_loop_handler_run ()
No symbol table info available.
#9 0x000000000041c1c8 in io_loop_run ()
No symbol table info available.
#10 0x000000000040f0f4 in main ()
No symbol table info available.
intrepid# file /software/dovecot-1.0rc2.debug/libexec/dovecot/dovecot-auth
/software/dovecot-1.0rc2.debug/libexec/dovecot/dovecot-auth: ELF 64-bit
LSB executable, AMD x86-64, version 1 (SYSV), for NetBSD 3.99.21,
dynamically linked (uses shared libs), for NetBSD 3.99.21, not stripped
Any other way you want me to try and debug this? I'm ignorant in
regards to kevent. I do note that the kevent manpage on NetBSD notes:
EV_DELETE Removes the event from the kqueue. Events
which are
attached to file descriptors are automatically
deleted on the last close of the descriptor.
Maybe dovecot-auth is closing the fh before calling io_loop_handle_remove()?
ScottE
More information about the dovecot
mailing list