Hi Timo, Periodic segfaults with doveadm proxy list:
root@director1:~) doveadm proxy list doveadm(root): Error: LIST failed: Disconnected Segmentation fault (core dumped) Sometimes it's just the 'LIST failed' error, other times it's the error with the segfault. Usually the first attempt to call it works, subsequent attempts fail. I've attached a strace log of it in action. -- Tom Pawlowski OIT-CSS System Administrator office: Hill 147 email: tom...@jla.rutgers.edu phone: (732) 445-2634
execve("/usr/bin/doveadm", ["doveadm", "proxy", "list"], [/* 26 vars */]) = 0 brk(0) = 0x1bb97000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b99123e5000 uname({sys="Linux", node="director1", ...}) = 0 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/usr/lib64/dovecot/tls/x86_64/libdovecot-storage.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) stat("/usr/lib64/dovecot/tls/x86_64", 0x7fffbbe8e710) = -1 ENOENT (No such file or directory) open("/usr/lib64/dovecot/tls/libdovecot-storage.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) stat("/usr/lib64/dovecot/tls", 0x7fffbbe8e710) = -1 ENOENT (No such file or directory) open("/usr/lib64/dovecot/x86_64/libdovecot-storage.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) stat("/usr/lib64/dovecot/x86_64", 0x7fffbbe8e710) = -1 ENOENT (No such file or directory) open("/usr/lib64/dovecot/libdovecot-storage.so.0", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\0\242\242\3071\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=862264, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b99123e6000 mmap(0x31c7a00000, 2955496, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x31c7a00000 mprotect(0x31c7acb000, 2093056, PROT_NONE) = 0 mmap(0x31c7cca000, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xca000) = 0x31c7cca000 close(3) = 0 open("/usr/lib64/dovecot/libdovecot.so.0", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220ma\3071\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=508488, ...}) = 0 mmap(0x31c7600000, 2611840, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x31c7600000 mprotect(0x31c7679000, 2093056, PROT_NONE) = 0 mmap(0x31c7878000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x78000) = 0x31c7878000 mmap(0x31c787c000, 6784, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x31c787c000 close(3) = 0 open("/usr/lib64/dovecot/libcrypt.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=26844, ...}) = 0 mmap(NULL, 26844, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2b99123e7000 close(3) = 0 open("/lib64/libcrypt.so.1", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\t\240\257>\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=48600, ...}) = 0 mmap(0x3eafa00000, 2322880, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3eafa00000 mprotect(0x3eafa09000, 2093056, PROT_NONE) = 0 mmap(0x3eafc08000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x8000) = 0x3eafc08000 mmap(0x3eafc0a000, 184768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3eafc0a000 close(3) = 0 open("/usr/lib64/dovecot/libpam.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib64/libpam.so.0", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\"`N6\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=50904, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b99123ee000 mmap(0x364e600000, 2143696, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x364e600000 mprotect(0x364e60b000, 2097152, PROT_NONE) = 0 mmap(0x364e80b000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xb000) = 0x364e80b000 close(3) = 0 open("/usr/lib64/dovecot/libdl.so.2", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib64/libdl.so.2", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\16\340\255>\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=23360, ...}) = 0 mmap(0x3eade00000, 2109696, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3eade00000 mprotect(0x3eade02000, 2097152, PROT_NONE) = 0 mmap(0x3eae002000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x3eae002000 close(3) = 0 open("/usr/lib64/dovecot/librt.so.1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib64/librt.so.1", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0 \"`\257>\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=53448, ...}) = 0 mmap(0x3eaf600000, 2132936, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3eaf600000 mprotect(0x3eaf607000, 2097152, PROT_NONE) = 0 mmap(0x3eaf807000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x7000) = 0x3eaf807000 close(3) = 0 open("/usr/lib64/dovecot/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib64/libc.so.6", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\332\241\255>\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=1718120, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b99123ef000 mmap(0x3eada00000, 3498328, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3eada00000 mprotect(0x3eadb4e000, 2093056, PROT_NONE) = 0 mmap(0x3eadd4d000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x14d000) = 0x3eadd4d000 mmap(0x3eadd52000, 16728, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3eadd52000 close(3) = 0 open("/usr/lib64/dovecot/libaudit.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib64/libaudit.so.0", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\340&`&8\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=98920, ...}) = 0 mmap(0x3826600000, 2191888, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3826600000 mprotect(0x3826617000, 2093056, PROT_NONE) = 0 mmap(0x3826816000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x16000) = 0x3826816000 close(3) = 0 open("/usr/lib64/dovecot/libpthread.so.0", O_RDONLY) = -1 ENOENT (No such file or directory) open("/lib64/libpthread.so.0", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\240W \256>\0\0\0"..., 832) = 832 fstat(3, {st_mode=S_IFREG|0755, st_size=145824, ...}) = 0 mmap(0x3eae200000, 2204528, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3eae200000 mprotect(0x3eae216000, 2093056, PROT_NONE) = 0 mmap(0x3eae415000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x15000) = 0x3eae415000 mmap(0x3eae417000, 13168, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3eae417000 close(3) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b99123f0000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b99123f1000 arch_prctl(ARCH_SET_FS, 0x2b99123f13a0) = 0 mprotect(0x3eafc08000, 4096, PROT_READ) = 0 mprotect(0x3eae002000, 4096, PROT_READ) = 0 mprotect(0x3eaf807000, 4096, PROT_READ) = 0 mprotect(0x3eadd4d000, 16384, PROT_READ) = 0 mprotect(0x3ead81b000, 4096, PROT_READ) = 0 mprotect(0x3eae415000, 4096, PROT_READ) = 0 munmap(0x2b99123e7000, 26844) = 0 set_tid_address(0x2b99123f1430) = 29539 set_robust_list(0x2b99123f1440, 0x18) = 0 futex(0x7fffbbe8f23c, FUTEX_WAKE_PRIVATE, 1) = 0 rt_sigaction(SIGRTMIN, {0x3eae205380, [], SA_RESTORER|SA_SIGINFO, 0x3eae20eb10}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0x3eae2052b0, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x3eae20eb10}, NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 getrlimit(RLIMIT_STACK, {rlim_cur=10240*1024, rlim_max=RLIM_INFINITY}) = 0 brk(0) = 0x1bb97000 brk(0x1bbc0000) = 0x1bbc0000 uname({sys="Linux", node="director1", ...}) = 0 rt_sigaction(SIGPIPE, {0x1, [], SA_RESTORER|SA_RESTART, 0x3eada302d0}, NULL, 8) = 0 rt_sigaction(SIGALRM, {0x31c7648b40, [], SA_RESTORER|SA_SIGINFO, 0x3eada302d0}, NULL, 8) = 0 socket(PF_FILE, SOCK_STREAM, 0) = 3 fcntl(3, F_GETFL) = 0x2 (flags O_RDWR) fcntl(3, F_SETFL, O_RDWR|O_NONBLOCK) = 0 connect(3, {sa_family=AF_FILE, path="/var/run/dovecot/config"...}, 110) = 0 fcntl(3, F_GETFL) = 0x802 (flags O_RDWR|O_NONBLOCK) fcntl(3, F_SETFL, O_RDWR) = 0 write(3, "VERSION\tconfig\t2\t0\nREQ\tmodule=do"..., 38) = 38 fstat(3, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0 alarm(10) = 0 read(3, "\n\n", 8192) = 2 alarm(0) = 10 open("/usr/lib64/dovecot/doveadm", O_RDONLY|O_NONBLOCK|O_DIRECTORY) = 4 fcntl(4, F_SETFD, FD_CLOEXEC) = 0 getdents(4, /* 10 entries */, 32768) = 464 getdents(4, /* 0 entries */, 32768) = 0 close(4) = 0 futex(0x3eae0030ec, FUTEX_WAKE_PRIVATE, 2147483647) = 0 open("/usr/lib64/dovecot/doveadm/lib10_doveadm_acl_plugin.so", O_RDONLY) = 4 read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\220\33\0\0\0\0\0\0"..., 832) = 832 fstat(4, {st_mode=S_IFREG|0755, st_size=16696, ...}) = 0 mmap(NULL, 2112392, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x2b99123f2000 mprotect(0x2b99123f6000, 2093056, PROT_NONE) = 0 mmap(0x2b99125f5000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x3000) = 0x2b99125f5000 close(4) = 0 munmap(0x2b99123f2000, 2112392) = 0 open("/usr/lib64/dovecot/doveadm/lib10_doveadm_expire_plugin.so", O_RDONLY) = 4 read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\300\24\0\0\0\0\0\0"..., 832) = 832 fstat(4, {st_mode=S_IFREG|0755, st_size=12208, ...}) = 0 mmap(NULL, 2107912, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x2b99123f2000 mprotect(0x2b99123f5000, 2093056, PROT_NONE) = 0 mmap(0x2b99125f4000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x2b99125f4000 close(4) = 0 munmap(0x2b99123f2000, 2107912) = 0 open("/usr/lib64/dovecot/doveadm/lib10_doveadm_quota_plugin.so", O_RDONLY) = 4 read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320\v\0\0\0\0\0\0"..., 832) = 832 fstat(4, {st_mode=S_IFREG|0755, st_size=7248, ...}) = 0 mmap(NULL, 2102936, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x2b99123f2000 mprotect(0x2b99123f4000, 2093056, PROT_NONE) = 0 mmap(0x2b99125f3000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x1000) = 0x2b99125f3000 close(4) = 0 munmap(0x2b99123f2000, 2102936) = 0 open("/usr/lib64/dovecot/doveadm/lib10_doveadm_zlib_plugin.so", O_RDONLY) = 4 read(4, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\260\22\0\0\0\0\0\0"..., 832) = 832 fstat(4, {st_mode=S_IFREG|0755, st_size=11048, ...}) = 0 mmap(NULL, 2106296, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 4, 0) = 0x2b99123f2000 mprotect(0x2b99123f4000, 2097152, PROT_NONE) = 0 mmap(0x2b99125f4000, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 4, 0x2000) = 0x2b99125f4000 close(4) = 0 munmap(0x2b99123f2000, 2106296) = 0 rt_sigaction(SIGINT, {0x31c7648d70, [], SA_RESTORER|SA_SIGINFO, 0x3eada302d0}, NULL, 8) = 0 pipe([4, 5]) = 0 fcntl(4, F_GETFL) = 0 (flags O_RDONLY) fcntl(4, F_SETFL, O_RDONLY|O_NONBLOCK) = 0 fcntl(5, F_GETFL) = 0x1 (flags O_WRONLY) fcntl(5, F_SETFL, O_WRONLY|O_NONBLOCK) = 0 fcntl(4, F_GETFD) = 0 fcntl(4, F_SETFD, FD_CLOEXEC) = 0 fcntl(5, F_GETFD) = 0 fcntl(5, F_SETFD, FD_CLOEXEC) = 0 epoll_create(128) = 6 fcntl(6, F_GETFD) = 0 fcntl(6, F_SETFD, FD_CLOEXEC) = 0 epoll_ctl(6, EPOLL_CTL_ADD, 4, {EPOLLIN|EPOLLPRI|EPOLLERR|EPOLLHUP, {u32=465205840, u64=465205840}}) = 0 rt_sigaction(SIGTERM, {0x31c7648d70, [], SA_RESTORER|SA_SIGINFO, 0x3eada302d0}, NULL, 8) = 0 open("/dev/null", O_WRONLY|O_CREAT|O_APPEND, 0600) = 7 fcntl(7, F_GETFD) = 0 fcntl(7, F_SETFD, FD_CLOEXEC) = 0 ioctl(1, TIOCGWINSZ, {ws_row=68, ws_col=155, ws_xpixel=0, ws_ypixel=0}) = 0 socket(PF_FILE, SOCK_STREAM, 0) = 8 fcntl(8, F_GETFL) = 0x2 (flags O_RDWR) fcntl(8, F_SETFL, O_RDWR|O_NONBLOCK) = 0 connect(8, {sa_family=AF_FILE, path="/var/run/dovecot/ipc"...}, 110) = 0 epoll_ctl(6, EPOLL_CTL_ADD, 8, {EPOLLIN|EPOLLPRI|EPOLLERR|EPOLLHUP, {u32=465209040, u64=465209040}}) = 0 fstat(8, {st_mode=S_IFSOCK|0777, st_size=0, ...}) = 0 lseek(8, 0, SEEK_CUR) = -1 ESPIPE (Illegal seek) getsockname(8, {sa_family=AF_FILE, path="\377\377\377\377\377\377\200\363\271\33"...}, [18446462603027808258]) = 0 writev(8, [{"proxy\t*\tLIST", 12}, {"\n", 1}], 2) = -1 EPIPE (Broken pipe) --- SIGPIPE (Broken pipe) @ 0 (0) --- epoll_wait(6, {{EPOLLIN|EPOLLHUP, {u32=465209040, u64=465209040}}}, 2, 4294967295) = 1 read(8, "", 8192) = 0 write(2, "doveadm(root): Error: LIST faile"..., 48) = 48 epoll_ctl(6, EPOLL_CTL_DEL, 8, {0, {u32=465209040, u64=465209040}}) = 0 close(8) = 0 --- SIGSEGV (Segmentation fault) @ 0 (0) --- +++ killed by SIGSEGV (core dumped) +++