[Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-09-22 Thread Joe Auty
<>

[Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-09-22 Thread Joe Auty

Hello,

I'm seeing a lot of these in my /var/log/messages in Debian Squeeze, I 
suspect this might be causing performance issues. Any suggestions what I 
can try to fix this?


[7236671.301179] imap-login[9306]: segfault at 28 ip 7f9ff83c7e14 
sp 7fff49d385c0 error 4 in libdovecot.so.0.0.0[7f9ff837c000+8b000]


I'm using the 2.1.10 packages obtained with the following in my 
sources.list:


deb http://xi.rename-it.nl/debian/ stable-auto/dovecot-2.1 main


I need to use Dovecot 2.1.x because I need to support handling multiple 
SSL certs.


Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-09-22 Thread Joe Auty
<><><>

Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-09-22 Thread Joe Auty


Gary V <mailto:mr88tal...@gmail.com>
September 22, 2012 9:00 PM

May not be related at all, but when I see segfaults on Debian, the
first thing I try is to switch to bash as the default system shell:

dpkg-reconfigure dash

Answer: Use dash as the default system shell (/bin/sh)? 


Unfortunately this hasn't completely resolved the issue (I don't know if 
it has reduced the number of times this has happened either). FWIW I'm 
getting the same sort of segfault 28 with both imap-login and pop-login. 
I'm using dovecot-ldap, if that makes a difference. I'm not really sure 
what the best way would be to trace this problem so that I can provide 
you guys with more useful info.


P.S. sorry for the duplicate message, it seems to have something to do 
with attaching images to messages.



Joe Auty <mailto:j...@netmusician.org>
September 22, 2012 3:57 PM
Hello,

I'm seeing a lot of these in my /var/log/messages in Debian Squeeze, I 
suspect this might be causing performance issues. Any suggestions what 
I can try to fix this?



I'm using the 2.1.10 packages obtained with the following in my 
sources.list:


deb http://xi.rename-it.nl/debian/ stable-auto/dovecot-2.1 main


I need to use Dovecot 2.1.x because I need to support handling 
multiple SSL certs.





Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-09-22 Thread Joe Auty


Robert Schetterer <mailto:rob...@schetterer.org>
September 23, 2012 1:44 AM

show your dovecot conf


Thanks!

http://pastebin.com/gVRrCjyK

I took what you said literally, please let me know if you'd like to see 
any of the other Debian config files.






Joe Auty <mailto:j...@netmusician.org>
September 22, 2012 3:57 PM
Hello,

I'm seeing a lot of these in my /var/log/messages in Debian Squeeze, I 
suspect this might be causing performance issues. Any suggestions what 
I can try to fix this?



I'm using the 2.1.10 packages obtained with the following in my 
sources.list:


deb http://xi.rename-it.nl/debian/ stable-auto/dovecot-2.1 main


I need to use Dovecot 2.1.x because I need to support handling 
multiple SSL certs.

----



--
Joe Auty, NetMusician
NetMusician helps musicians, bands and artists create beautiful, 
professional, custom designed, career-essential websites that are easy 
to maintain and to integrate with popular social networks.

www.netmusician.org <http://www.netmusician.org>
j...@netmusician.org <mailto:j...@netmusician.org>



Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-09-23 Thread Joe Auty
<>

Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-09-23 Thread Joe Auty


Tamsy <mailto:dovecot-l...@mohtex.net>
September 23, 2012 5:07 AM

With "show your dovecot conf" Robert means show us the output of 
"doveconf -n"


My apologies! Here it is...



# 2.1.10: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-5-amd64 x86_64 Debian 6.0.5
auth_verbose = yes
disable_plaintext_auth = no
mail_fsync = always
mail_location = maildir:~/Maildir:INDEX=/doriandata/dovecotindexes/%u
mail_nfs_storage = yes
namespace inbox {
  inbox = yes
  location =
  prefix =
}
passdb {
  driver = pam
}
passdb {
  args = /etc/dovecot/dovecot-ldap.conf.ext
  driver = ldap
}
protocols = " imap pop3"
ssl_cert = 

Joe Auty <mailto:j...@netmusician.org>
September 23, 2012 2:00 AM


Robert Schetterer <mailto:rob...@schetterer.org>
September 23, 2012 1:44 AM

show your dovecot conf


Thanks!

http://pastebin.com/gVRrCjyK

I took what you said literally, please let me know if you'd like to 
see any of the other Debian config files.






Joe Auty <mailto:j...@netmusician.org>
September 22, 2012 3:57 PM
Hello,

I'm seeing a lot of these in my /var/log/messages in Debian Squeeze, 
I suspect this might be causing performance issues. Any suggestions 
what I can try to fix this?



I'm using the 2.1.10 packages obtained with the following in my 
sources.list:


deb http://xi.rename-it.nl/debian/ stable-auto/dovecot-2.1 main


I need to use Dovecot 2.1.x because I need to support handling 
multiple SSL certs.






Robert Schetterer <mailto:rob...@schetterer.org>
September 23, 2012 1:44 AM

show your dovecot conf


Joe Auty <mailto:j...@netmusician.org>
September 22, 2012 3:57 PM
Hello,

I'm seeing a lot of these in my /var/log/messages in Debian Squeeze, I 
suspect this might be causing performance issues. Any suggestions what 
I can try to fix this?



I'm using the 2.1.10 packages obtained with the following in my 
sources.list:


deb http://xi.rename-it.nl/debian/ stable-auto/dovecot-2.1 main


I need to use Dovecot 2.1.x because I need to support handling 
multiple SSL certs.




Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-09-23 Thread Joe Auty


Timo Sirainen <mailto:t...@iki.fi>
September 23, 2012 5:58 AM


You should have a similar log line about the crash in mail.log (or 
wherever "doveadm log find" says that errors get logged). Find those 
lines, then configure login processes to dump core files. This 
probably should work:


service imap-login {
executable = imap-login -D
}

Next time it crashes hopefully you'll have 
/var/run/dovecot/login/core* file(s). Get a gdb backtrace from it send it:


gdb /usr/lib/dovecot/imap-login /var/run/dovecot/login/core
bt full


I hope I'm doing this correctly!

# gdb /usr/lib/dovecot/imap-login /var/run/dovecot/login/core
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 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".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/lib/dovecot/imap-login...(no debugging symbols 
found)...done.


warning: Can't read pathname for load map: Input/output error.
Reading symbols from /usr/lib/dovecot/libdovecot-login.so.0...(no 
debugging symbols found)...done.

Loaded symbols for /usr/lib/dovecot/libdovecot-login.so.0
Reading symbols from /usr/lib/dovecot/libdovecot.so.0...(no debugging 
symbols found)...done.

Loaded symbols for /usr/lib/dovecot/libdovecot.so.0
Reading symbols from /lib/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /usr/lib/libssl.so.0.9.8...(no debugging symbols 
found)...done.

Loaded symbols for /usr/lib/libssl.so.0.9.8
Reading symbols from /usr/lib/libcrypto.so.0.9.8...(no debugging symbols 
found)...done.

Loaded symbols for /usr/lib/libcrypto.so.0.9.8
Reading symbols from /lib/librt.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/librt.so.1
Reading symbols from /lib/libdl.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols 
found)...done.

Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /usr/lib/libz.so.1...(no debugging symbols 
found)...done.

Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/libpthread.so.0...(no debugging symbols 
found)...done.

Loaded symbols for /lib/libpthread.so.0
Core was generated by `dovecot/imap-login   ?'.
Program terminated with signal 11, Segmentation fault.
#0  0x7f789cd08e14 in hash_table_destroy () from 
/usr/lib/dovecot/libdovecot.so.0

(gdb) bt full
#0  0x7f789cd08e14 in hash_table_destroy () from 
/usr/lib/dovecot/libdovecot.so.0

No symbol table info available.
#1  0x7f789ccda054 in settings_parser_deinit () from 
/usr/lib/dovecot/libdovecot.so.0

No symbol table info available.
#2  0x7f789ccff33d in master_service_settings_cache_deinit () from 
/usr/lib/dovecot/libdovecot.so.0

No symbol table info available.
#3  0x7f789cf5e018 in login_binary_run () from 
/usr/lib/dovecot/libdovecot-login.so.0

No symbol table info available.
#4  0x7f789c979c8d in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#5  0x00402459 in ?? ()
No symbol table info available.
#6  0x7fff8a9c65f8 in ?? ()
No symbol table info available.
#7  0x001c in ?? ()
No symbol table info available.
#8  0x0002 in ?? ()
No symbol table info available.
#9  0x7fff8a9c7e6a in ?? ()
No symbol table info available.
#10 0x7fff8a9c7e7d in ?? ()
No symbol table info available.
#11 0x in ?? ()
No symbol table info available.





Joe Auty <mailto:j...@netmusician.org>
September 22, 2012 3:57 PM
Hello,

I'm seeing a lot of these in my /var/log/messages in Debian Squeeze, I 
suspect this might be causing performance issues. Any suggestions what 
I can try to fix this?



I'm using the 2.1.10 packages obtained with the following in my 
sources.list:


deb http://xi.rename-it.nl/debian/ stable-auto/dovecot-2.1 main


I need to use Dovecot 2.1.x because I need to support handling 
multiple SSL certs.








Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-09-23 Thread Joe Auty


Charles Marcus <mailto:cmar...@media-brokers.com>
September 23, 2012 9:51 AM


Please don't make it harder for others to help you...

Just paste the output in the body of the email. Some (many?) people 
won't click on links like that from people they don't know...


My apologies, I figured at the time that it would be better to not make 
these emails crazy long, but I guess they can be just as easily 
snipped... Here is my conf:


## Dovecot configuration file

# If you're in a hurry, see http://wiki2.dovecot.org/QuickConfiguration

# "doveconf -n" command gives a clean output of the changed settings. Use it
# instead of copy&pasting files when posting to the Dovecot mailing list.

# '#' character and everything after it is treated as comments. Extra spaces
# and tabs are ignored. If you want to use either of these explicitly, 
put the

# value inside quotes, eg.: key = "# char and trailing whitespace  "

# Default values are shown for each setting, it's not required to uncomment
# those. These are exceptions to this though: No sections (e.g. 
namespace {})

# or plugin settings are added by default, they're listed only as examples.
# Paths are also just examples with the real defaults being based on 
configure

# options. The paths listed here are for configure --prefix=/usr
# --sysconfdir=/etc --localstatedir=/var

# Enable installed protocols
!include_try /usr/share/dovecot/protocols.d/*.protocol

# A comma separated list of IPs or hosts where to listen in for 
connections.

# "*" listens in all IPv4 interfaces, "::" listens in all IPv6 interfaces.
# If you want to specify non-default ports or anything more complex,
# edit conf.d/master.conf.
#listen = *, ::

# Base directory where to store runtime data.
#base_dir = /var/run/dovecot/

# Name of this instance. In multi-instance setup doveadm and other commands
# can use -i  to select which instance is used (an 
alternative

# to -c ). The instance name is also added to Dovecot processes
# in ps output.
#instance_name = dovecot

# Greeting message for clients.
#login_greeting = Dovecot ready.

# Space separated list of trusted network ranges. Connections from these
# IPs are allowed to override their IP addresses and ports (for logging and
# for authentication checks). disable_plaintext_auth is also ignored for
# these networks. Typically you'd specify your IMAP proxy servers here.
#login_trusted_networks =

# Sepace separated list of login access check sockets (e.g. tcpwrap)
#login_access_sockets =

# With proxy_maybe=yes if proxy destination matches any of these IPs, 
don't do
# proxying. This isn't necessary normally, but may be useful if the 
destination

# IP is e.g. a load balancer's IP.
#auth_proxy_self =

# Show more verbose process titles (in ps). Currently shows user name and
# IP address. Useful for seeing who are actually using the IMAP processes
# (eg. shared mailboxes or if same uid is used for multiple accounts).
#verbose_proctitle = no
verbose_proctitle = yes

# Should all processes be killed when Dovecot master process shuts down.
# Setting this to "no" means that Dovecot can be upgraded without
# forcing existing client connections to close (although that could also be
# a problem if the upgrade is e.g. because of a security fix).
#shutdown_clients = yes

# If non-zero, run mail commands via this many connections to doveadm 
server,

# instead of running them directly in the same process.
#doveadm_worker_count = 0
# UNIX socket or host:port used for connecting to doveadm server
#doveadm_socket_path = doveadm-server

# Space separated list of environment variables that are preserved on 
Dovecot

# startup and passed down to all of its child processes. You can also give
# key=value pairs to always set specific settings.
#import_environment = TZ

##
## Dictionary server settings
##

# Dictionary can be used to store key=value lists. This is used by several
# plugins. The dictionary can be accessed either directly or though a
# dictionary server. The following dict block maps dictionary names to URIs
# when the server is used. These can then be referenced using URIs in format
# "proxy::".

dict {
  #quota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext
  #expire = sqlite:/etc/dovecot/dovecot-dict-sql.conf.ext
}

# Most of the actual configuration gets included below. The filenames are
# first sorted by their ASCII value and parsed in that order. The 
00-prefixes

# in filenames are intended to make it easier to understand the ordering.
!include conf.d/*.conf

# A config file can also tried to be included without giving an error if
# it's not found:
!include_try local.conf




Joe Auty <mailto:j...@netmusician.org>
September 23, 2012 2:00 AM


Robert Schetterer <mailto:rob...@schetterer.org>
September 23, 2012 1:44 AM

show your dovecot conf


Thanks!

http://pastebin.com/gVRrCjyK

I took 

Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-09-24 Thread Joe Auty


Timo Sirainen <mailto:t...@iki.fi>
September 24, 2012 10:32 AM

Well, the good news is that it crashes only after it has already 
disconnected the client anyway. But I thought I fixed this bug in 
v2.1.10 and I'm not able to reproduce it myself.. Having debugging 
information available might show something useful. Try installing 
dovecot-dbg package and getting the bt full again?


Thanks Timo, I have done so. Here is the results of my debugging info now:

 gdb /usr/lib/dovecot/imap-login /var/run/dovecot/login/core
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 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".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/lib/dovecot/imap-login...Reading symbols from 
/usr/lib/debug/usr/lib/dovecot/imap-login...done.

(no debugging symbols found)...done.

warning: Can't read pathname for load map: Input/output error.
Reading symbols from /usr/lib/dovecot/libdovecot-login.so.0...Reading 
symbols from 
/usr/lib/debug/usr/lib/dovecot/libdovecot-login.so.0.0.0...done.

(no debugging symbols found)...done.
Loaded symbols for /usr/lib/dovecot/libdovecot-login.so.0
Reading symbols from /usr/lib/dovecot/libdovecot.so.0...Reading symbols 
from /usr/lib/debug/usr/lib/dovecot/libdovecot.so.0.0.0...done.

(no debugging symbols found)...done.
Loaded symbols for /usr/lib/dovecot/libdovecot.so.0
Reading symbols from /lib/libc.so.6...(no debugging symbols found)...done.
Loaded symbols for /lib/libc.so.6
Reading symbols from /usr/lib/libssl.so.0.9.8...(no debugging symbols 
found)...done.

Loaded symbols for /usr/lib/libssl.so.0.9.8
Reading symbols from /usr/lib/libcrypto.so.0.9.8...(no debugging symbols 
found)...done.

Loaded symbols for /usr/lib/libcrypto.so.0.9.8
Reading symbols from /lib/librt.so.1...(no debugging symbols found)...done.
Loaded symbols for /lib/librt.so.1
Reading symbols from /lib/libdl.so.2...(no debugging symbols found)...done.
Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging symbols 
found)...done.

Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /usr/lib/libz.so.1...(no debugging symbols 
found)...done.

Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/libpthread.so.0...(no debugging symbols 
found)...done.

Loaded symbols for /lib/libpthread.so.0
Core was generated by `dovecot/imap-login   ?'.
Program terminated with signal 11, Segmentation fault.
#0  hash_table_destroy (_table=0x28) at hash.c:106
106hash.c: No such file or directory.
in hash.c
(gdb) bt full
#0  hash_table_destroy (_table=0x28) at hash.c:106
table = 
#1  0x7ff300721054 in settings_parser_deinit (_ctx=out>) at settings-parser.c:237

ctx = 0x0
#2  0x7ff30074633d in master_service_settings_cache_deinit 
(_cache=)

at master-service-settings-cache.c:86
cache = 0x9f9a60
entry = 0xa016e0
next = 0x0
__FUNCTION__ = "master_service_settings_cache_deinit"
#3  0x7ff3009a5018 in main_deinit (binary=, 
argc=2, argv=0x9f8370) at main.c:355

No locals.
#4  login_binary_run (binary=, argc=2, 
argv=0x9f8370) at main.c:407

set_pool = 0x9f8a30
allow_core_dumps = 
login_socket = 
c = 
#5  0x7ff3003c0c8d in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#6  0x00402459 in _start ()
No symbol table info available.
(gdb)





Joe Auty <mailto:j...@netmusician.org>
September 23, 2012 7:05 AM


Timo Sirainen <mailto:t...@iki.fi>
September 23, 2012 5:58 AM


You should have a similar log line about the crash in mail.log (or 
wherever "doveadm log find" says that errors get logged). Find those 
lines, then configure login processes to dump core files. This 
probably should work:


service imap-login {
executable = imap-login -D
}

Next time it crashes hopefully you'll have 
/var/run/dovecot/login/core* file(s). Get a gdb backtrace from it 
send it:


gdb /usr/lib/dovecot/imap-login /var/run/dovecot/login/core
bt full


I hope I'm doing this correctly!

# gdb /usr/lib/dovecot/imap-login /var/run/dovecot/login/core
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 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".
For bug reporting inst

Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-10-01 Thread Joe Auty
<><><>

Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-10-01 Thread Joe Auty
Are performance issues a possible symptom of this problem? It was 
mentioned that this happens after disconnects, but does this break IDLE?


Birta Levente <mailto:blevi.li...@gmail.com>
September 27, 2012 9:25 AM

Hi Timo

I just want to ask you: this issue is still in your task list?
If you need more debug information please tell me how can I give you.

Thanks,
Levi


Timo Sirainen <mailto:t...@iki.fi>
September 24, 2012 10:58 AM

Show your doveconf -n output at least. As for debugging information, 
that would depend on how you installed Dovecot? From some RPM or sources?



Birta Levente <mailto:blevi.li...@gmail.com>
September 24, 2012 10:55 AM


I have the same problem, but on centos 6.3 64bit. How can I give you 
the debug information?


Levi


Timo Sirainen <mailto:t...@iki.fi>
September 24, 2012 10:32 AM

Well, the good news is that it crashes only after it has already 
disconnected the client anyway. But I thought I fixed this bug in 
v2.1.10 and I'm not able to reproduce it myself.. Having debugging 
information available might show something useful. Try installing 
dovecot-dbg package and getting the bt full again?



Joe Auty <mailto:j...@netmusician.org>
September 23, 2012 7:05 AM


Timo Sirainen <mailto:t...@iki.fi>
September 23, 2012 5:58 AM


You should have a similar log line about the crash in mail.log (or 
wherever "doveadm log find" says that errors get logged). Find those 
lines, then configure login processes to dump core files. This 
probably should work:


service imap-login {
executable = imap-login -D
}

Next time it crashes hopefully you'll have 
/var/run/dovecot/login/core* file(s). Get a gdb backtrace from it 
send it:


gdb /usr/lib/dovecot/imap-login /var/run/dovecot/login/core
bt full


I hope I'm doing this correctly!

# gdb /usr/lib/dovecot/imap-login /var/run/dovecot/login/core
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 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".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/lib/dovecot/imap-login...(no debugging 
symbols found)...done.


warning: Can't read pathname for load map: Input/output error.
Reading symbols from /usr/lib/dovecot/libdovecot-login.so.0...(no 
debugging symbols found)...done.

Loaded symbols for /usr/lib/dovecot/libdovecot-login.so.0
Reading symbols from /usr/lib/dovecot/libdovecot.so.0...(no debugging 
symbols found)...done.

Loaded symbols for /usr/lib/dovecot/libdovecot.so.0
Reading symbols from /lib/libc.so.6...(no debugging symbols 
found)...done.

Loaded symbols for /lib/libc.so.6
Reading symbols from /usr/lib/libssl.so.0.9.8...(no debugging symbols 
found)...done.

Loaded symbols for /usr/lib/libssl.so.0.9.8
Reading symbols from /usr/lib/libcrypto.so.0.9.8...(no debugging 
symbols found)...done.

Loaded symbols for /usr/lib/libcrypto.so.0.9.8
Reading symbols from /lib/librt.so.1...(no debugging symbols 
found)...done.

Loaded symbols for /lib/librt.so.1
Reading symbols from /lib/libdl.so.2...(no debugging symbols 
found)...done.

Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging 
symbols found)...done.

Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /usr/lib/libz.so.1...(no debugging symbols 
found)...done.

Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/libpthread.so.0...(no debugging symbols 
found)...done.

Loaded symbols for /lib/libpthread.so.0
Core was generated by `dovecot/imap-login   ?'.
Program terminated with signal 11, Segmentation fault.
#0  0x7f789cd08e14 in hash_table_destroy () from 
/usr/lib/dovecot/libdovecot.so.0

(gdb) bt full
#0  0x7f789cd08e14 in hash_table_destroy () from 
/usr/lib/dovecot/libdovecot.so.0

No symbol table info available.
#1  0x7f789ccda054 in settings_parser_deinit () from 
/usr/lib/dovecot/libdovecot.so.0

No symbol table info available.
#2  0x7f789ccff33d in master_service_settings_cache_deinit () from 
/usr/lib/dovecot/libdovecot.so.0

No symbol table info available.
#3  0x7f789cf5e018 in login_binary_run () from 
/usr/lib/dovecot/libdovecot-login.so.0

No symbol table info available.
#4  0x7f789c979c8d in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#5  0x00402459 in ?? ()
No symbol table info available.
#6  0x7fff8a9c65f8 in ?? ()
No symbol table info available.
#7  0x001c in ?? ()
No symbol table info available.
#8  0x0002 in ?? ()
No symbol table info available.
#9  0x7fff8a9c7e6a in ?? ()
No symbol table i

Re: [Dovecot] segfault in Debian Squeeze + Dovecot 2.1.10

2012-10-02 Thread Joe Auty


Timo Sirainen <mailto:t...@iki.fi>
October 2, 2012 4:12 PM

Fixed: http://hg.dovecot.org/dovecot-2.1/rev/e29b627219b3


Awesome!

Will this fix make it into 2.1.11, or should I toy with incorporating 
your change and compiling a new copy of 2.1.10 by hand? Also, will the 
seg fault have caused performance issues in breaking IDLE connections? 
Just wondering what sort of impact this fix might have...


Thanks for working on this, it is most appreciated, I'm a big fan of 
Dovecot!






Joe Auty <mailto:j...@netmusician.org>
September 24, 2012 3:03 PM


Timo Sirainen <mailto:t...@iki.fi>
September 24, 2012 10:32 AM

Well, the good news is that it crashes only after it has already 
disconnected the client anyway. But I thought I fixed this bug in 
v2.1.10 and I'm not able to reproduce it myself.. Having debugging 
information available might show something useful. Try installing 
dovecot-dbg package and getting the bt full again?


Thanks Timo, I have done so. Here is the results of my debugging info 
now:


 gdb /usr/lib/dovecot/imap-login /var/run/dovecot/login/core
GNU gdb (GDB) 7.0.1-debian
Copyright (C) 2009 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".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /usr/lib/dovecot/imap-login...Reading symbols 
from /usr/lib/debug/usr/lib/dovecot/imap-login...done.

(no debugging symbols found)...done.

warning: Can't read pathname for load map: Input/output error.
Reading symbols from /usr/lib/dovecot/libdovecot-login.so.0...Reading 
symbols from 
/usr/lib/debug/usr/lib/dovecot/libdovecot-login.so.0.0.0...done.

(no debugging symbols found)...done.
Loaded symbols for /usr/lib/dovecot/libdovecot-login.so.0
Reading symbols from /usr/lib/dovecot/libdovecot.so.0...Reading 
symbols from /usr/lib/debug/usr/lib/dovecot/libdovecot.so.0.0.0...done.

(no debugging symbols found)...done.
Loaded symbols for /usr/lib/dovecot/libdovecot.so.0
Reading symbols from /lib/libc.so.6...(no debugging symbols 
found)...done.

Loaded symbols for /lib/libc.so.6
Reading symbols from /usr/lib/libssl.so.0.9.8...(no debugging symbols 
found)...done.

Loaded symbols for /usr/lib/libssl.so.0.9.8
Reading symbols from /usr/lib/libcrypto.so.0.9.8...(no debugging 
symbols found)...done.

Loaded symbols for /usr/lib/libcrypto.so.0.9.8
Reading symbols from /lib/librt.so.1...(no debugging symbols 
found)...done.

Loaded symbols for /lib/librt.so.1
Reading symbols from /lib/libdl.so.2...(no debugging symbols 
found)...done.

Loaded symbols for /lib/libdl.so.2
Reading symbols from /lib64/ld-linux-x86-64.so.2...(no debugging 
symbols found)...done.

Loaded symbols for /lib64/ld-linux-x86-64.so.2
Reading symbols from /usr/lib/libz.so.1...(no debugging symbols 
found)...done.

Loaded symbols for /usr/lib/libz.so.1
Reading symbols from /lib/libpthread.so.0...(no debugging symbols 
found)...done.

Loaded symbols for /lib/libpthread.so.0
Core was generated by `dovecot/imap-login   ?'.
Program terminated with signal 11, Segmentation fault.
#0  hash_table_destroy (_table=0x28) at hash.c:106
106hash.c: No such file or directory.
in hash.c
(gdb) bt full
#0  hash_table_destroy (_table=0x28) at hash.c:106
table = 
#1  0x7ff300721054 in settings_parser_deinit (_ctx=optimized out>) at settings-parser.c:237

ctx = 0x0
#2  0x7ff30074633d in master_service_settings_cache_deinit 
(_cache=)

at master-service-settings-cache.c:86
cache = 0x9f9a60
entry = 0xa016e0
next = 0x0
__FUNCTION__ = "master_service_settings_cache_deinit"
#3  0x7ff3009a5018 in main_deinit (binary=, 
argc=2, argv=0x9f8370) at main.c:355

No locals.
#4  login_binary_run (binary=, argc=2, 
argv=0x9f8370) at main.c:407

set_pool = 0x9f8a30
allow_core_dumps = 
login_socket = 
c = 
#5  0x7ff3003c0c8d in __libc_start_main () from /lib/libc.so.6
No symbol table info available.
#6  0x00402459 in _start ()
No symbol table info available.
(gdb)





Joe Auty <mailto:j...@netmusician.org>
September 23, 2012 7:05 AM


Timo Sirainen <mailto:t...@iki.fi>
September 23, 2012 5:58 AM


You should have a similar log line about the crash in mail.log (or 
wherever "doveadm log find" says that errors get logged). Find those 
lines, then configure login processes to dump core files. This 
probably should work:


service imap-login {
executable = imap-login -D
}

Next time it crashes hopefully you'll have 
/var/run/dovecot/login/core* file(s). Get a gdb backtrace from it 
send it:


gdb /usr/lib/dove