2.3.0~alpha0-1~auto+197: Crash when openening a message via IMAP
From the log:
Jul 11 13:12:42 mproxy dovecot: imap-login: Login: user=<hildeb>, method=PLAIN, rip=141.42.206.36, lip=141.42.206.11, mpid=27254, TLS, session=
# 2.3.0.alpha0 (3aae884) [XI:2:2.3.0~alpha0-1~auto+197]: /etc/dovecot/dovecot.conf
-- Ralf Hildebrandt Geschäftsbereich IT | Abteilung Netzwerk Charité - Universitätsmedizin Berlin Campus Benjamin Franklin Hindenburgdamm 30 | D-12203 Berlin Tel. +49 30 450 570 155 | Fax: +49 30 450 570 962 ralf.hildebrandt@charite.de | http://www.charite.de
On 11.07.2016 14:15, Ralf Hildebrandt wrote:
From the log:
Jul 11 13:12:42 mproxy dovecot: imap-login: Login: user=<hildeb>, method=PLAIN, rip=141.42.206.36, lip=141.42.206.11, mpid=27254, TLS, session=
Jul 11 13:12:44 mproxy dovecot: imap(hildeb) : Panic: file imap-client.c: line 854 (client_check_command_hangs): assertion failed: ((io_loop_find_fd_conditions(current_ioloop, client->fd_out) & IO_WRITE) != 0) Jul 11 13:12:44 mproxy dovecot: imap(hildeb) : Error: Raw backtrace: /usr/lib/dovecot/libdovecot.so.0(+0x8e09e) [0x7efd1d3a309e] -> /usr/lib/dovecot/libdovecot.so.0(+0x8e18c) [0x7efd1d3a318c] -> /usr/lib/dovecot/libdovecot.so.0(i_fatal+0) [0x7efd1d34169e] -> dovecot/imap hildeb 141.42.206.36 UID FETCH - 8192 bytes waiting corked [0x55649b35cd42] -> dovecot/imap hildeb 141.42.206.36 UID FETCH - 8192 bytes waiting corked [0x55649b35ce68] -> /usr/lib/dovecot/libdovecot.so.0(+0xaf370) [0x7efd1d3c4370] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_call_io+0x4c) [0x7efd1d3b715c] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run_internal+0x101) [0x7efd1d3b85b1] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_handler_run+0x25) [0x7efd1d3b71e5] -> /usr/lib/dovecot/libdovecot.so.0(io_loop_run+0x30) [0x7efd1d3b7380] -> /usr/lib/dovecot/libdovecot.so.0(master_service_run+0x13) [0x7efd1d347c13] -> dovecot/imap hildeb 141.42.206.36 UID FETCH - 8192 bytes waiting corked [0x55649b34faf2] -> /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf0) [0x7efd1cf6c830] -> dovecot/imap hildeb 141.42.206.36 UID FETCH - 8192 bytes waiting corked [0x55649b34fc6f] Jul 11 13:12:44 mproxy dovecot: imap(hildeb) : Fatal: master: service(imap): child 27254 killed with signal 6 (core dumped) # 2.3.0.alpha0 (3aae884) [XI:2:2.3.0~alpha0-1~auto+197]: /etc/dovecot/dovecot.conf
Did you forget to include doveconf -n?
Aki
- Aki Tuomi aki.tuomi@dovecot.fi:
Did you forget to include doveconf -n?
# 2.3.0.alpha0 (e84ffeb) [XI:2:2.3.0~alpha0-1~auto+200]: /etc/dovecot/dovecot.conf # Pigeonhole version 0.5.0.alpha0 (66b7c14) # OS: Linux 4.4.0-24-generic x86_64 Ubuntu 16.04 LTS auth_mechanisms = plain login default_vsz_limit = 1 G imapc_host = email.charite.de imapc_port = 993 imapc_ssl = imaps imapc_ssl_verify = no listen = *,:: mail_gid = imapproxy mail_home = /home/imapproxy/%u mail_location = imapc:~/imapc mail_plugins = mail_log notify mail_uid = imapproxy passdb { args = host=email.charite.de port=993 ssl=imaps default_fields = userdb_imapc_user=%u userdb_imapc_password=%w userdb_imapc_host=email.charite.de userdb_imapc_ssl=imaps userdb_imapc_port=993 driver = imap } plugin { sieve = file:~/sieve;active=~/.dovecot.sieve } protocols = imap service auth { inet_listener { address = 127.0.0.1 port = 12345 } } ssl = required ssl_ca =
-- Ralf Hildebrandt Geschäftsbereich IT | Abteilung Netzwerk Charité - Universitätsmedizin Berlin Campus Benjamin Franklin Hindenburgdamm 30 | D-12203 Berlin Tel. +49 30 450 570 155 | Fax: +49 30 450 570 962 ralf.hildebrandt@charite.de | http://www.charite.de
On 11 Jul 2016, at 14:15, Ralf Hildebrandt Ralf.Hildebrandt@charite.de wrote:
From the log:
Jul 11 13:12:42 mproxy dovecot: imap-login: Login: user=<hildeb>, method=PLAIN, rip=141.42.206.36, lip=141.42.206.11, mpid=27254, TLS, session=
Jul 11 13:12:44 mproxy dovecot: imap(hildeb) : Panic: file imap-client.c: line 854 (client_check_command_hangs): assertion failed: ((io_loop_find_fd_conditions(current_ioloop, client->fd_out) & IO_WRITE) != 0)
Could you gdb the core and print some outputs:
fr 5 (or whichever frame number has client_check_command_hangs) p *client p *client->command_queue p *client->command_queue->next p *client->command_queue->next->next (etc, until it fails) p *current_ioloop p *current_ioloop->io_files p *current_ioloop->io_files->next p *current_ioloop->io_files->next->next (etc, until it fails)
- Timo Sirainen tss@iki.fi:
On 11 Jul 2016, at 14:15, Ralf Hildebrandt Ralf.Hildebrandt@charite.de wrote:
From the log:
Jul 11 13:12:42 mproxy dovecot: imap-login: Login: user=<hildeb>, method=PLAIN, rip=141.42.206.36, lip=141.42.206.11, mpid=27254, TLS, session=
Jul 11 13:12:44 mproxy dovecot: imap(hildeb) : Panic: file imap-client.c: line 854 (client_check_command_hangs): assertion failed: ((io_loop_find_fd_conditions(current_ioloop, client->fd_out) & IO_WRITE) != 0) Could you gdb the core and print some outputs:
fr 5 (or whichever frame number has client_check_command_hangs) p *client p *client->command_queue p *client->command_queue->next p *client->command_queue->next->next (etc, until it fails) p *current_ioloop p *current_ioloop->io_files p *current_ioloop->io_files->next p *current_ioloop->io_files->next->next (etc, until it fails)
Here it goes:
Core was generated by 'dovecot/imap'. Program terminated with signal SIGABRT, Aborted. #0 0x00007f6fa260d418 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54 54 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. (gdb) bt #0 0x00007f6fa260d418 in __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:54 #1 0x00007f6fa260f01a in __GI_abort () at abort.c:89 #2 0x00007f6fa2a2f226 in default_fatal_finish (type=<optimized out>, status=status@entry=0) at failures.c:201 #3 0x00007f6fa2a2f31c in i_internal_fatal_handler (ctx=0x7ffc8041e430, format=<optimized out>, args=<optimized out>) at failures.c:670 #4 0x00007f6fa29cd6ce in i_panic (format=format@entry=0x558b2197ce00 "file %s: line %d (%s): assertion failed: (%s)") at failures.c:275 #5 0x0000558b2196bd42 in client_check_command_hangs (client=0x558b21bf7030) at imap-client.c:854 #6 client_continue_pending_input (client=0x558b21bf7030) at imap-client.c:919 #7 0x0000558b2196be68 in client_output (client=0x558b21bf7030) at imap-client.c:1233 #8 0x00007f6fa2a50500 in stream_send_io (fstream=0x558b21be5bb0) at ostream-file.c:478 #9 0x00007f6fa2a432ec in io_loop_call_io (io=0x558b21bfdf00) at ioloop.c:564 #10 0x00007f6fa2a44741 in io_loop_handler_run_internal (ioloop=ioloop@entry=0x558b21ba3740) at ioloop-epoll.c:221 #11 0x00007f6fa2a43375 in io_loop_handler_run (ioloop=ioloop@entry=0x558b21ba3740) at ioloop.c:612 #12 0x00007f6fa2a43510 in io_loop_run (ioloop=0x558b21ba3740) at ioloop.c:588 #13 0x00007f6fa29d3c43 in master_service_run (service=0x558b21ba35e0, callback=<optimized out>) at master-service.c:650 #14 0x0000558b2195eaf2 in main (argc=1, argv=0x558b21ba3390) at main.c:460
(gdb) fr 5 #5 0x0000558b2196bd42 in client_check_command_hangs (client=0x558b21bf7030) at imap-client.c:854 854 imap-client.c: No such file or directory.
(gdb) p *client
$1 = {prev = 0x0, next = 0x0, v = {state_export = 0x558b219763a0
(gdb) p *client->command_queue
$2 = {prev = 0x0, next = 0x0, client = 0x558b21bf7030, pool =
0x558b21bf7820, tag = 0x558b21bf7970 "a0020", name = 0x558b21bf7978
"UID FETCH", args = 0x558b21bf7988 "157242 BODY.PEEK[]",
cmd_flags = COMMAND_FLAG_BREAKS_SEQS, tagline_reply = 0x0, func =
0x558b219616a0
(gdb) p *client->command_queue->next Cannot access memory at address 0x0
(gdb) p *current_ioloop
$4 = {prev = 0x0, cur_ctx = 0x558b21bb8150, io_files = 0x558b21bfdea0,
next_io_file = 0x0, timeouts = 0x558b21ba37c0, timeouts_new = {arr =
{buffer = 0x558b21ba3930, element_size = 8},
v = 0x558b21ba3930, v_modifiable = 0x558b21ba3930},
handler_context = 0x558b21ba5250, notify_handler_context = 0x0,
max_fd_count = 0,
time_moved_callback = 0x7f6fa2cfdea0
(gdb) p *current_ioloop->io_files
$5 = {io = {condition = IO_READ, source_linenum = 1558, pending =
false, callback = 0x7f6fa2d4bb50
(gdb) p *current_ioloop->io_files->next
$6 = {io = {condition = IO_READ, source_linenum = 115, pending =
false, callback = 0x558b2196beb0
(gdb) p *current_ioloop->io_files->next->next
$7 = {io = {condition = IO_ERROR, source_linenum = 520, pending =
false, callback = 0x7f6fa29d42f0
(gdb) p *current_ioloop->io_files->next->next->next
$8 = {io = {condition = IO_READ, source_linenum = 244, pending =
false, callback = 0x7f6fa2a46540
(gdb) p *current_ioloop->io_files->next->next->next->next Cannot access memory at address 0x0
-- Ralf Hildebrandt Geschäftsbereich IT | Abteilung Netzwerk Charité - Universitätsmedizin Berlin Campus Benjamin Franklin Hindenburgdamm 30 | D-12203 Berlin Tel. +49 30 450 570 155 | Fax: +49 30 450 570 962 ralf.hildebrandt@charite.de | http://www.charite.de
On 12.07.2016 12:25, Ralf Hildebrandt wrote:
- Timo Sirainen tss@iki.fi:
On 11 Jul 2016, at 14:15, Ralf Hildebrandt Ralf.Hildebrandt@charite.de wrote:
From the log:
Jul 11 13:12:42 mproxy dovecot: imap-login: Login: user=<hildeb>, method=PLAIN, rip=141.42.206.36, lip=141.42.206.11, mpid=27254, TLS, session=
Jul 11 13:12:44 mproxy dovecot: imap(hildeb) : Panic: file imap-client.c: line 854 (client_check_command_hangs): assertion failed: ((io_loop_find_fd_conditions(current_ioloop, client->fd_out) & IO_WRITE) != 0) Could you gdb the core and print some outputs: fr 5 (or whichever frame number has client_check_command_hangs) p *client p *client->command_queue p *client->command_queue->next p *client->command_queue->next->next (etc, until it fails) p *current_ioloop p *current_ioloop->io_files p *current_ioloop->io_files->next p *current_ioloop->io_files->next->next (etc, until it fails)
Hi!
Fixed in https://github.com/dovecot/core/commit/e03bbb0f23631fcde5e83479f987a517c9a8b...
Aki Tuomi Dovecot Oy
participants (3)
-
Aki Tuomi
-
Ralf Hildebrandt
-
Timo Sirainen