I've had this working for over a month now with no problems. Then I
suffered a power outage today, and now dovecot/auth dies as soon as I start
dovecot. I've spent the past three hours searching google, but can't
find
even a hint at what's wrong with my server. As far as I can tell, this is
the only thing that has failed after bringing the server back up when power
was restored. Can anyone help me figure out what is wrong?
The maillog records:
May 9 20:27:37 box dovecot: auth: Debug: Loading modules from directory:
/usr/lib64/dovecot/auth
May 9 20:27:37 box dovecot: auth: Debug: Module loaded:
/usr/lib64/dovecot/auth/libauthdb_ldap.so
May 9 20:27:37 box dovecot: auth: Debug: Module loaded:
/usr/lib64/dovecot/auth/libdriver_mysql.so
May 9 20:27:37 box dovecot: auth: Debug: Module loaded:
/usr/lib64/dovecot/auth/libdriver_pgsql.so
May 9 20:27:37 box dovecot: auth: Debug: Module loaded:
/usr/lib64/dovecot/auth/libdriver_sqlite.so
May 9 20:27:37 box dovecot: auth: Debug: Module loaded:
/usr/lib64/dovecot/auth/libmech_gssapi.so
May 9 20:27:37 box dovecot: auth: Panic: io_add(0x1) called twice fd=13,
callback=0x3016833290 -> 0x3016836cd0
May 9 20:27:37 box dovecot: auth: Error: Raw backtrace:
/usr/lib64/dovecot/libdovecot.so.0() [0x301683ca6a] ->
/usr/lib64/dovecot/libdovecot.so.0() [0x301683ca
b6] -> /usr/lib64/dovecot/libdovecot.so.0() [0x3016816dba] ->
/usr/lib64/dovecot/libdovecot.so.0(ioloop_iolist_add+0x7f) [0x301684872f]
-> /usr/lib64/dovecot/li
bdovecot.so.0(io_loop_handle_add+0x39) [0x3016849149] ->
/usr/lib64/dovecot/libdovecot.so.0(io_add+0xa3) [0x3016848593] ->
/usr/lib64/dovecot/libdovecot.so.0(ma
ster_service_io_listeners_add+0x68) [0x3016835b88] ->
/usr/lib64/dovecot/libdovecot.so.0(master_service_init_finish+0x192)
[0x30168363c2] -> dovecot/auth(main+0
x207) [0x415567] -> /lib64/libc.so.6(__libc_start_main+0xfd) [0x3016c1ecdd]
-> dovecot/auth() [0x409aa9]
May 9 20:27:37 box dovecot: master: Error: service(auth): child 25615
killed with signal 6 (core dumped)
May 9 20:27:37 box dovecot: master: Error: service(auth): command startup
failed, throttling
A core dump was produced. The backtrace shows:
# gdb /usr/libexec/dovecot/auth coredump
Core was generated by `dovecot/auth'.
Program terminated with signal 6, Aborted.
#0 0x0000003016c32885 in raise () from /lib64/libc.so.6
Missing separate debuginfos, use: debuginfo-install
dovecot-2.0.9-2.el6_1.1.x86_64
(gdb) bt full
#0 0x0000003016c32885 in raise () from /lib64/libc.so.6
#1 0x0000003016c34065 in abort () from /lib64/libc.so.6
#2 0x000000301683ca78 in ?? () from /usr/lib64/dovecot/libdovecot.so.0
#3 0x000000301683cab6 in ?? () from /usr/lib64/dovecot/libdovecot.so.0
#4 0x0000003016816dba in i_panic () from /usr/lib64/dovecot/libdovecot.so.0
#5 0x000000301684872f in ioloop_iolist_add () from
/usr/lib64/dovecot/libdovecot.so.0
#6 0x0000003016849149 in io_loop_handle_add () from
/usr/lib64/dovecot/libdovecot.so.0
#7 0x0000003016848593 in io_add () from /usr/lib64/dovecot/libdovecot.so.0
#8 0x0000003016835b88 in master_service_io_listeners_add () from
/usr/lib64/dovecot/libdovecot.so.0
#9 0x00000030168363c2 in master_service_init_finish () from
/usr/lib64/dovecot/libdovecot.so.0
#10 0x0000000000415567 in main ()
This is running on CentOS 6.2
# rpm -q dovecot
dovecot-2.0.9-2.el6_1.1.x86_64
# dovecot --version
2.0.9
# dovecot -n
# 2.0.9: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-220.13.1.el6.x86_64 x86_64 CentOS release 6.2 (Final)
auth_debug = yes
auth_mechanisms = plain login
auth_verbose = yes
listen = *
mail_debug = yes
mail_location = mbox:~/mail:INBOX=/var/mail/%u
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character
vacation subaddress comparator-i;ascii-numeric relational regex imap4flags
copy include variables body enotify environment mailbox date
mbox_write_locks = fcntl
passdb {
driver = pam
}
plugin {
sieve = ~/.dovecot.sieve
sieve_dir = ~/sieve
}
service auth {
inet_listener {
port = 12345
}
unix_listener /var/spool/postfix/private/auth {
mode = 0666
}
user = $default_internal_user
}
ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
ssl_key = </etc/pki/dovecot/private/dovecot.pem
userdb {
driver = passwd
}
Okay, I figured out about installing debuginfo for a better backtrace, so
here it is:
#0 0x0000003016c32885 in raise (sig=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
resultvar = 0
pid = 2598
selftid = 2598
#1 0x0000003016c34065 in abort () at abort.c:92
save_stage = 2
act = {__sigaction_handler = {sa_handler = 0x1, sa_sigaction 0x1},
sa_mask = {__val = {206536311181, 35954576, 35955280, 0,
206536165913, 4281703, 206536010617,
206158430224, 140734171103856, 140734171103648, 7, 7,
35807776, 0, 16992, 6717507389398987896}}, sa_flags = 1768709983,
sa_restorer = 0}
sigs = {__val = {32, 0 <repeats 15 times>}}
#2 0x000000301683ca78 in default_fatal_finish (type=<value optimized
out>,
status=0) at failures.c:187
backtrace = 0x2226220 "/usr/lib64/dovecot/libdovecot.so.0()
[0x301683ca6a] -> /usr/lib64/dovecot/libdovecot.so.0() [0x301683cab6] ->
/usr/lib64/dovecot/libdovecot.so.0() [0x3016816dba] ->
/usr/lib64/dovecot/libdovecot.so.0("...
#3 0x000000301683cab6 in i_internal_fatal_handler (ctx=0x7fff3a46c2e0,
format=<value optimized out>, args=<value optimized out>) at
failures.c:645
status = 0
#4 0x0000003016816dba in i_panic (format=0xa26 <Address 0xa26 out of
bounds>) at failures.c:259
ctx = {type = LOG_TYPE_PANIC, exit_status = 0, timestamp = 0x0}
args = {{gp_offset = 40, fp_offset = 48, overflow_arg_area
0x7fff3a46c3b0, reg_save_area = 0x7fff3a46c2f0}}
#5 0x000000301684872f in ioloop_iolist_add (list=<value optimized out>,
io=<value optimized out>) at ioloop-iolist.c:26
i = <value optimized out>
idx = <value optimized out>
#6 0x0000003016849149 in io_loop_handle_add (io=0x224a250) at
ioloop-epoll.c:104
ctx = 0x2243b20
list = 0x2249558
event = {events = 1, data = {ptr = 0x16836cd000000000, fd = 0, u32
= 0, u64 = 1622259931392507904}}
op = <value optimized out>
first = <value optimized out>
#7 0x0000003016848593 in io_add (fd=13, condition=IO_READ,
callback=0x3016836cd0 <master_service_listen>, context=0x2249f90) at
ioloop.c:54
io = 0x224a250
__FUNCTION__ = "io_add"
#8 0x0000003016835b88 in master_service_io_listeners_add
(service=0x222e4d0) at master-service.c:777
l = 0x2249f90
i = <value optimized out>
#9 0x00000030168363c2 in master_service_init_finish (service=0x222e4d0) at
master-service.c:385
st = {st_dev = 8, st_ino = 15492, st_nlink = 1, st_mode = 4480,
st_uid = 0, st_gid = 0, __pad0 = 0, st_rdev = 0, st_size = 0, st_blksize 4096,
st_blocks = 0, st_atim = {
tv_sec = 1336599449, tv_nsec = 793902156}, st_mtim = {tv_sec
1336599449, tv_nsec = 793902156}, st_ctim = {tv_sec = 1336599449, tv_nsec
793902156}, __unused = {0, 0,
0}}
value = <value optimized out>
count = 4096
__FUNCTION__ = "master_service_init_finish"
#10 0x0000000000415567 in main (argc=1, argv=0x222e370) at main.c:293
c = <value optimized out>
On Wed, 2012-05-09 at 20:38 -0400, Edward Burr wrote:> May 9 20:27:37 box dovecot: auth: Panic: io_add(0x1) called twice fd=13, > callback=0x3016833290 -> 0x3016836cd0Could you do: gdb /usr/libexec/dovecot/auth coredump x 0x3016833290 x 0x3016836cd0> I finally got it working by commenting out the configuration under service > auth { > # inet_listener { > # port = 12345 > # } > > which I had in there for SASL with postfix, and which WAS working before > the power outage.I guess there might be some bug in v2.0.9 related to this.
Seemingly Similar Threads
- Exit status code 134; what is it, in the context of Dovecot Antispam plug-in?
- How to dsync mdbox compressed to maildir uncompressed
- Backtrace io_add(0x1) called twice fd= (was Exit status code 134; what is it, in the context of Dovecot Antispam plug-in?)
- Strange Dovecot 2.0.20 auth chokes and cores
- v2.0.13 problems after kernel patch for CVE-2011-1083 applied on Centos 5