[Dovecot] v1.2.2 / rev 0ec0b1f1ac6a+: imap crash
Hi Timo,
the preconditions was: a dbox converted (convert-tool) from Maildir contents of dbox/mailboxes/INBOX/dbox-Mails was: - dovecot.index.log [64876 bytes] - dovecot-uidlist [167280 bytes] - 3237 mails
I've started mutt to see the mails. Mutt lost the connection immediately. The log shows nothing strange except for: dovecot: Error: child 12136 (imap) killed with signal 11 (core dumped)
Each time i try to connect to dovecot imap crashes. The first backtrace is attached.
Regards, Pascal
The trapper recommends today: face1e55.0921116@localdomain.org
GNU gdb 6.8-debian Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later http://gnu.org/licenses/gpl.html This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu"...
warning: Can't read pathname for load map: Input/output error. Reading symbols from /lib/libdl.so.2...Reading symbols from /usr/lib/debug/lib/libdl-2.9.so...done. done. Loaded symbols for /lib/libdl.so.2 Reading symbols from /lib/librt.so.1...Reading symbols from /usr/lib/debug/lib/librt-2.9.so...done. done. Loaded symbols for /lib/librt.so.1 Reading symbols from /usr/lib/libgc.so.1...done. Loaded symbols for /usr/lib/libgc.so.1 Reading symbols from /lib/libc.so.6...Reading symbols from /usr/lib/debug/lib/libc-2.9.so...done. done. Loaded symbols for /lib/libc.so.6 Reading symbols from /lib/ld-linux-x86-64.so.2...Reading symbols from /usr/lib/debug/lib/ld-2.9.so...done. done. Loaded symbols for /lib64/ld-linux-x86-64.so.2 Reading symbols from /lib/libpthread.so.0...Reading symbols from /usr/lib/debug/lib/libpthread-2.9.so...done. done. Loaded symbols for /lib/libpthread.so.0 Reading symbols from /lib/libgcc_s.so.1...done. Loaded symbols for /lib/libgcc_s.so.1 Reading symbols from /usr/local/dovecot12/lib/dovecot/imap/lib10_quota_plugin.so...done. Loaded symbols for /usr/local/dovecot12/lib/dovecot/imap/lib10_quota_plugin.so Reading symbols from /usr/local/dovecot12/lib/dovecot/imap/lib11_imap_quota_plugin.so...done. Loaded symbols for /usr/local/dovecot12/lib/dovecot/imap/lib11_imap_quota_plugin.so Core was generated by `imap [j.roe@example.com 2a01:198:37a:1::1]'. Program terminated with signal 11, Segmentation fault. [New process 12136] #0 0x000000000047ac5f in index_storage_lock_notify_reset (ibox=0x0) at index-storage.c:379 379 ibox->next_lock_notify = time(NULL) + LOCK_NOTIFY_INTERVAL; (gdb) bt full #0 0x000000000047ac5f in index_storage_lock_notify_reset (ibox=0x0) at index-storage.c:379 No locals. #1 0x000000000044f6b1 in maildir_uidlist_lock_timeout (uidlist=0x22ee9a0, nonblock=false, refresh=true, refresh_when_locked=false) at maildir-uidlist.c:149 box = (struct mailbox *) 0x22ea890 control_dir = 0x70
path = 0x2301b20 "" old_mask = 3656138848 dotlock_flags = 0 i = 5133251 ret = 0 #2 0x000000000044f882 in maildir_uidlist_lock (uidlist=0x22ee9a0) at maildir-uidlist.c:203 No locals. #3 0x0000000000452527 in maildir_uidlist_update (uidlist=0x22ee9a0) at maildir-uidlist.c:1308 ret = 0 #4 0x000000000044fda0 in maildir_uidlist_deinit (_uidlist=0x7fffd9ec4128) at maildir-uidlist.c:325 uidlist = (struct maildir_uidlist *) 0x22ee9a0 __PRETTY_FUNCTION__ = "maildir_uidlist_deinit" #5 0x000000000044792a in dbox_sync_index_rebuild (mbox=0x22ea890) at dbox-sync-rebuild.c:446 ctx = {mbox = 0x22ea890, append_ctx = 0x0, view = 0x0, trans = 0x0, cache_ext_id = 6, cache_reset_id = 0, maildir_uidlist = 0x0, mk = 0x0, maildir_new_files = {arr = {buffer = 0x0, element_size = 8}, v = 0x0, v_modifiable = 0x0}, maildir_new_uid = 0, cache_used = 0} seq = 3 offset = 64876 fnames = (char **) 0x22d3cf0 i = 0 count = 0 ret = 0 #6 0x00000000004457b6 in dbox_sync_begin (mbox=0x22ea890, ctx_r=0x7fffd9ec41d8, close_flush_dirty_flags=false, force=false) at dbox-sync.c:357 storage = (struct mail_storage *) 0x2292a20 ctx = (struct dbox_sync_context *) 0x22d4e00 sync_flags = 6 i = 0 ret = 0 rebuild = false #7 0x0000000000445900 in dbox_sync (mbox=0x22ea890, close_flush_dirty_flags=false) at dbox-sync.c:396 sync_ctx = (struct dbox_sync_context *) 0x22ea890 #8 0x000000000044598c in dbox_storage_sync_init (box=0x22ea890, flags=65) at dbox-sync.c:415 mbox = (struct dbox_mailbox *) 0x22ea890 ret = 0 #9 0x0000000000488778 in mailbox_sync_init (box=0x22ea890, flags=65) at mail-storage.c:562 No locals. #10 0x000000000048881e in mailbox_sync (box=0x22ea890, flags=65, status_items=239, status_r=0x7fffd9ec42a0) at mail-storage.c:593 ctx = (struct mailbox_sync_context *) 0x22ea890 #11 0x0000000000422be3 in select_open (ctx=0x22dc1e8, mailbox=0x50498b "INBOX", readonly=false) at cmd-select.c:273 client = (struct client *) 0x22daf00 status = {messages = 3656139488, recent = 32767, unseen = 4354815, uidvalidity = 0, uidnext = 36552744, first_unseen_seq = 0, highest_modseq = 36252192, keywords = 0x7fffd9ec4318, sync_delayed_expunges = 0, nonpermanent_modseqs = 0} open_flags = 0 #12 0x0000000000422ff6 in cmd_select_full (cmd=0x22dc090, readonly=false) at cmd-select.c:381 client = (struct client *) 0x22daf00 box = (struct mailbox *) 0x22cf228 ctx = (struct imap_select_context *) 0x22dc1e8 args = (const struct imap_arg *) 0x22e50d8 mailbox = 0x50498b "INBOX" ret = 32767 __PRETTY_FUNCTION__ = "cmd_select_full" #13 0x0000000000423029 in cmd_select (cmd=0x22dc090) at cmd-select.c:388 No locals. #14 0x00000000004262b6 in client_command_input (cmd=0x22dc090) at client.c:611 client = (struct client *) 0x22daf00 command = (struct command *) 0x7022dc1b8 __PRETTY_FUNCTION__ = "client_command_input" #15 0x00000000004264e1 in client_command_input (cmd=0x22dc090) at client.c:660 client = (struct client *) 0x22daf00 command = (struct command *) 0x22cf228 __PRETTY_FUNCTION__ = "client_command_input" #16 0x0000000000426603 in client_handle_next_command (client=0x22daf00, remove_io_r=0x7fffd9ec445d) at client.c:701 size = 22 #17 0x0000000000426684 in client_handle_input (client=0x22daf00) at client.c:713 _data_stack_cur_id = 3 ret = true remove_io = false handled_commands = true __PRETTY_FUNCTION__ = "client_handle_input" #18 0x00000000004267e0 in client_input (client=0x22daf00) at client.c:752 cmd = (struct client_command_context *) 0xd9ec44cc output = (struct ostream *) 0x22dae68 bytes = 56 __PRETTY_FUNCTION__ = "client_input" #19 0x00000000004e2843 in io_loop_handler_run (ioloop=0x2295f80) at ioloop-epoll.c:208 ctx = (struct ioloop_handler_context *) 0x229cfc0 events = (struct epoll_event *) 0x22cf800 event = (const struct epoll_event *) 0x22cf800 list = (struct io_list *) 0x229af80 io = (struct io_file *) 0x2295c00 tv = {tv_sec = 1799, tv_usec = 999469} events_count = 3 t_id = 2 msecs = 1800000 ret = 1 i = 0 j = 0 call = true #20 0x00000000004e1a3c in io_loop_run (ioloop=0x2295f80) at ioloop.c:338 No locals. #21 0x000000000043192c in main (argc=3, argv=0x7fffd9ec4648, envp=0x7fffd9ec4668) at main.c:327 No locals. (gdb)On Thu, 2009-07-30 at 17:15 +0200, Pascal Volk wrote:
#0 0x000000000047ac5f in index_storage_lock_notify_reset (ibox=0x0) at index-storage.c:379 No locals. #1 0x000000000044f6b1 in maildir_uidlist_lock_timeout (uidlist=0x22ee9a0, nonblock=false, refresh=true, refresh_when_locked=false) at maildir-uidlist.c:149
This crash should be fixed in two ways now:
Don't crash when going this code path: http://hg.dovecot.org/dovecot-1.2/rev/22119217ab5d
It should have never been executing that code in the first place. It was fixed earlier by: http://hg.dovecot.org/dovecot-1.2/rev/25c9df95fda6
On 08/07/2009 11:14 PM Timo Sirainen wrote:
On Thu, 2009-07-30 at 17:15 +0200, Pascal Volk wrote:
#0 0x000000000047ac5f in index_storage_lock_notify_reset (ibox=0x0) at index-storage.c:379 No locals. #1 0x000000000044f6b1 in maildir_uidlist_lock_timeout (uidlist=0x22ee9a0, nonblock=false, refresh=true, refresh_when_locked=false) at maildir-uidlist.c:149
This crash should be fixed in two ways now:
Don't crash when going this code path: http://hg.dovecot.org/dovecot-1.2/rev/22119217ab5d
It should have never been executing that code in the first place. It was fixed earlier by: http://hg.dovecot.org/dovecot-1.2/rev/25c9df95fda6
The second patch from Mon Aug 03 12:47:37 2009 -0400 has already resolved the problem on my site. (See irc log Aug 04 01:35:06 CEST).
And your first patch didn't provide any trouble. :-) Thank you very much!
Regards, Pascal
The trapper recommends today: c01dcafe.0922000@localdomain.org
participants (2)
-
Pascal Volk
-
Timo Sirainen