GNOME Bugzilla – Bug 682923
Deadlock in libsoup's connection_disconnected, free_unused_host
Last modified: 2012-11-18 20:54:40 UTC
Summary explains it all. Here is a gdb session. I did a ctrl+c while the UI was hanging waiting for timeout (waiting for a timeout should not, not ever, be a action that you perform whilst blocking the GMainLoop Evo guys!). I also used G_DEBUG to catch the critical when it finally concluded that it can't load the calendar. This bug has been around in Debian Testing for several weeks now. I think the severity is critical as it renders Evolution almost unusable for an average user. pvanhoof@lors:~$ gdb evolution GNU gdb (GDB) 7.4.1-debian Copyright (C) 2012 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 "i486-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/bin/evolution...(no debugging symbols found)...done. (gdb) run Starting program: /usr/bin/evolution [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/i386-linux-gnu/i686/cmov/libthread_db.so.1". [New Thread 0xb4937b70 (LWP 26697)] [New Thread 0xb40f6b70 (LWP 26698)] [New Thread 0xb36ffb70 (LWP 26699)] Migrating cached data Migrating config data Migrating local user data rmdir /home/pvanhoof/.evolution/tasks FAILED: Directory not empty (contents follows) tasks [New Thread 0xa70e2b70 (LWP 26700)] [New Thread 0xa66ffb70 (LWP 26701)] [New Thread 0xa5efeb70 (LWP 26702)] [New Thread 0xa56fdb70 (LWP 26703)] [New Thread 0xa4efcb70 (LWP 26704)] [New Thread 0xa44ffb70 (LWP 26705)] [New Thread 0xa3cfeb70 (LWP 26706)] [New Thread 0xa34fdb70 (LWP 26707)] [Thread 0xa34fdb70 (LWP 26707) exited] [New Thread 0xa34fdb70 (LWP 26708)] [Thread 0xa56fdb70 (LWP 26703) exited] [Thread 0xa44ffb70 (LWP 26705) exited] [New Thread 0xa44ffb70 (LWP 26709)] [New Thread 0xa56fdb70 (LWP 26710)] [New Thread 0xa28ffb70 (LWP 26711)] [New Thread 0xa20feb70 (LWP 26712)] [Thread 0xa3cfeb70 (LWP 26706) exited] [Thread 0xa66ffb70 (LWP 26701) exited] [Thread 0xa4efcb70 (LWP 26704) exited] [Thread 0xa5efeb70 (LWP 26702) exited] [Thread 0xa70e2b70 (LWP 26700) exited] ^C Program received signal SIGINT, Interrupt. 0xb7fe2822 in ?? () from /lib/ld-linux.so.2 (gdb) bt
+ Trace 230747
Thread 1 (Thread 0xb5d4f890 (LWP 26694))
pvanhoof@lors:~/repos/prodata/test/1.7.0.2$ dpkg -s evolution-data-server Package: evolution-data-server Status: install ok installed Priority: optional Section: gnome Installed-Size: 1804 Maintainer: Debian Evolution Maintainers <pkg-evolution-maintainers@lists.alioth.debian.org> Architecture: i386 Version: 3.4.3-1 Depends: gconf-service, libatk1.0-0 (>= 1.12.4), libc6 (>= 2.7), libcairo-gobject2 (>= 1.10.0), libcairo2 (>= 1.2.4), libcamel-1.2-33 (= 3.4.3-1), libcomerr2 (>= 1.01), libdb5.1, libdbus-glib-1-2 (>= 0.78), libebackend-1.2-2 (>= 3.4.3), libebook-1.2-13 (>= 3.4.3), libecal-1.2-11 (>= 3.4.3), libedata-book-1.2-13 (>= 3.4.3), libedata-cal-1.2-15 (>= 3.4.3), libedataserver-1.2-16 (>= 3.4.3), libgconf-2-4 (>= 2.31.1), libgdata13 (>= 0.11.0), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.31.8), libgoa-1.0-0 (>= 3.1.1), libgssapi-krb5-2 (>= 1.6.dfsg.2), libgtk-3-0 (>= 3.2), libgweather-3-0 (>= 3.0.0), libical0 (>= 0.48), libk5crypto3 (>= 1.6.dfsg.2), libkrb5-3 (>= 1.6.dfsg.2), libldap-2.4-2 (>= 2.4.7), libnspr4 (>= 2:4.9-2~) | libnspr4-0d (>= 1.8.0.10), libnss3 (>= 2:3.13.4-2~) | libnss3-1d (>= 3.12.0~1.9b1), liboauth0 (>= 0.9.1), libpango1.0-0 (>= 1.14.0), libsoup2.4-1 (>= 2.32.2), libsqlite3-0 (>= 3.5.9), libxml2 (>= 2.7.4), zlib1g (>= 1:1.1.4), evolution-data-server-common (= 3.4.3-1) Suggests: evolution, evolution-data-server-dbg (= 3.4.3-1) Breaks: libebook-1.2-12 (<< 3.4), libebook1.2-10 (<< 3.2), libebook1.2-9 (<< 2.32), libecal1.2-7 (<< 2.32), libecal1.2-8 (<< 3.2) Description: evolution database backend server The data server, called "Evolution Data Server" is responsible for managing mail, calendar, addressbook, tasks and memo information. Homepage: http://www.gnome.org/projects/evolution/ pvanhoof@lors:~/repos/prodata/test/1.7.0.2$ pvanhoof@lors:~/repos/prodata/test/1.7.0.2$ dpkg -s evolution Package: evolution Status: install ok installed Priority: optional Section: gnome Installed-Size: 5521 Maintainer: Debian Evolution Maintainers <pkg-evolution-maintainers@lists.alioth.debian.org> Architecture: i386 Version: 3.4.3-1 Replaces: evolution-common (<< 2.91) Provides: imap-client, mail-reader Depends: gconf-service, libatk1.0-0 (>= 1.12.4), libc6 (>= 2.7), libcairo-gobject2 (>= 1.10.0), libcairo2 (>= 1.10), libcamel-1.2-33 (>= 3.4), libcamel-1.2-33 (<< 3.5), libclutter-gtk-1.0-0 (>= 0.91.8), libdbus-glib-1-2 (>= 0.78), libebackend-1.2-2 (>= 3.4.3), libebook-1.2-13 (>= 3.4.3), libecal-1.2-11 (>= 3.4.3), libedataserver-1.2-16 (>= 3.4.3), libedataserverui-3.0-1 (>= 3.4.3), libenchant1c2a (>= 1.6), libevolution (>= 3.4), libevolution (<< 3.5), libgail-3-0 (>= 3.0.0), libgconf-2-4 (>= 2.31.1), libgdata13 (>= 0.10.1), libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>= 2.31.8), libgnome-desktop-3-2 (>= 3.2.0), libgtk-3-0 (>= 3.2.0), libgtkhtml-4.0-0 (>= 4.4), libgtkhtml-4.0-0 (<< 4.5), libgtkhtml-editor-4.0-0 (>= 4.4), libgtkhtml-editor-4.0-0 (<< 4.5), libgweather-3-0 (>= 3.0.0), libical0 (>= 0.48), libmx-1.0-2 (>= 1.2.0), libnotify4 (>= 0.7.0), libnspr4 (>= 2:4.9-2~) | libnspr4-0d (>= 1.8.0.10), libnss3 (>= 2:3.13.4-2~) | libnss3-1d (>= 3.12.0~1.9b1), libpango1.0-0 (>= 1.14.0), libsoup2.4-1 (>= 2.32.2), libsqlite3-0 (>= 3.5.9), libxml2 (>= 2.7.4), gconf2 (>= 2.28.1-2), evolution-common (= 3.4.3-1), evolution-data-server (>= 3.4), evolution-data-server (<< 3.5), gnome-icon-theme (>= 2.30.2.1), dbus, psmisc Pre-Depends: debconf (>= 1.4.69) | debconf-2.0 Recommends: evolution-plugins, evolution-webcal, yelp, bogofilter | spamassassin Suggests: evolution-exchange, evolution-dbg, evolution-plugins-experimental, gnupg, network-manager Conffiles: /etc/xdg/autostart/evolution-alarm-notify.desktop 2893b5399dc6cda2ac1d8cbca0c87cfc Description: groupware suite with mail client and organizer Evolution is a groupware suite which integrates mail, calendar, address book, to-do list and memo tools. . Additional features include integration with Exchange servers, newsgroup client, LDAP support and web calendars . Evolution is a graphical application that is part of GNOME, and is distributed by Novell, Inc. . See http://projects.gnome.org/evolution/ for more information. . The following plugins belonging to the "base" set are included. - calendar-file - calendar-http - itip-formatter - default-source - addressbook-file - mark-all-read - publish-calendar - caldav - imap-features - google-account-setup - webdav-account-setup - calendar-weather - sa-junk-plugin - bogo-junk-plugin Homepage: http://projects.gnome.org/evolution/ pvanhoof@lors:~/repos/prodata/test/1.7.0.2$
(gdb) cont Continuing. (evolution:26694): libecal-WARNING **: e_cal_client_new: Cannot get calendar from factory: Timeout was reached Program received signal SIGTRAP, Trace/breakpoint trap. 0xb7654f81 in g_logv () from /lib/i386-linux-gnu/libglib-2.0.so.0 (gdb) br Breakpoint 1 at 0xb7654f81 (gdb) bt
+ Trace 230748
(gdb) thread apply all bt
+ Trace 230749
And now with debugging symbols evolution-dbg: (gdb) run The program being debugged has been started already. Start it from the beginning? (y or n) y Starting program: /usr/bin/evolution [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/i386-linux-gnu/i686/cmov/libthread_db.so.1". [New Thread 0xb4937b70 (LWP 26864)] [New Thread 0xb40f6b70 (LWP 26865)] [New Thread 0xb38f5b70 (LWP 26866)] Migrating cached data Migrating config data Migrating local user data rmdir /home/pvanhoof/.evolution/tasks FAILED: Directory not empty (contents follows) tasks [New Thread 0xa6fe7b70 (LWP 26867)] [New Thread 0xa6778b70 (LWP 26868)] [Thread 0xa6778b70 (LWP 26868) exited] [New Thread 0xa6778b70 (LWP 26869)] [New Thread 0xa5f3fb70 (LWP 26870)] [New Thread 0xa573eb70 (LWP 26871)] [Thread 0xa5f3fb70 (LWP 26870) exited] [New Thread 0xa5f3fb70 (LWP 26872)] [New Thread 0xa4f0eb70 (LWP 26873)] [Thread 0xa5f3fb70 (LWP 26872) exited] [New Thread 0xa470db70 (LWP 26874)] [New Thread 0xa5f3fb70 (LWP 26875)] [New Thread 0xa3f0cb70 (LWP 26876)] [Thread 0xa3f0cb70 (LWP 26876) exited] [New Thread 0xa3f0cb70 (LWP 26877)] [New Thread 0xa33ffb70 (LWP 26878)] [New Thread 0xa2bfeb70 (LWP 26879)] [Thread 0xa573eb70 (LWP 26871) exited] [Thread 0xa470db70 (LWP 26874) exited] [Thread 0xa4f0eb70 (LWP 26873) exited] [Thread 0xa6fe7b70 (LWP 26867) exited] [New Thread 0xa6fe7b70 (LWP 26881)] ^C Program received signal SIGINT, Interrupt. 0xb7fe2822 in ?? () from /lib/ld-linux.so.2 (gdb) thread apply all bt
+ Trace 230750
Thread 1 (Thread 0xb5d4f890 (LWP 26863))
Continuing. [Thread 0xa6778b70 (LWP 26869) exited]
(gdb) thread apply all bt with debugging symbols:
+ Trace 230751
Thread 1 (Thread 0xb5d4f890 (LWP 26883))
Now also with debugging symbols of evolution-data-server-dbg: (gdb) run Starting program: /usr/bin/evolution [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/i386-linux-gnu/i686/cmov/libthread_db.so.1". [New Thread 0xb4937b70 (LWP 26981)] [New Thread 0xb40f6b70 (LWP 26982)] [New Thread 0xb38f5b70 (LWP 26983)] Migrating cached data Migrating config data Migrating local user data rmdir /home/pvanhoof/.evolution/tasks FAILED: Directory not empty (contents follows) tasks [New Thread 0xa6ff1b70 (LWP 26984)] [New Thread 0xa677db70 (LWP 26985)] [Thread 0xa677db70 (LWP 26985) exited] [New Thread 0xa677db70 (LWP 26986)] [New Thread 0xa5dffb70 (LWP 26987)] [New Thread 0xa55feb70 (LWP 26988)] [Thread 0xa5dffb70 (LWP 26987) exited] [New Thread 0xa5dffb70 (LWP 26989)] [New Thread 0xa4bffb70 (LWP 26990)] [New Thread 0xa43feb70 (LWP 26991)] [New Thread 0xa3bfdb70 (LWP 26992)] [New Thread 0xa33fcb70 (LWP 26993)] [Thread 0xa33fcb70 (LWP 26993) exited] [New Thread 0xa2bfbb70 (LWP 26994)] [Thread 0xa2bfbb70 (LWP 26994) exited] [New Thread 0xa2bfbb70 (LWP 26995)] [New Thread 0xa33fcb70 (LWP 26996)] [Thread 0xa55feb70 (LWP 26988) exited] [Thread 0xa3bfdb70 (LWP 26992) exited] [Thread 0xa6ff1b70 (LWP 26984) exited] [Thread 0xa43feb70 (LWP 26991) exited] [New Thread 0xa43feb70 (LWP 26997)] [Thread 0xa677db70 (LWP 26986) exited] (evolution:26978): libecal-WARNING **: e_cal_client_new: Cannot get calendar from factory: Timeout was reached Program received signal SIGTRAP, Trace/breakpoint trap. 0xb7654f81 in g_logv () from /lib/i386-linux-gnu/libglib-2.0.so.0 (gdb) thread apply all bt
+ Trace 230752
Thread 1 (Thread 0xb5d4f890 (LWP 26978))
(gdb)
I'm about to deprecate e_cal_client_new() and e_book_client_new() and replace them with proper async functions, because I found they block like crazy. But it's too late to fix for 3.6.
Async constructors ... :-\
I suspect this is the problem (or very closely related to) I've been living with for months (I'm running evo 3.4.3 from debian testing). From a users perspective, it's a total deal breaker. More than half the time I want to view any of my caldav calendars, it results in a UI lockup, if accessed either via evolution itself or via the drop down calendar from the desktop clock. If evolution itself hangs, it can be cleared by killing all evolution-calendar-factory processes. If the desktop clock hangs, the entire window manager seems to lock up, and unless you have a console open you have no way to open a new one to clear the problem (or drop to console/remote ssh).
(In reply to comment #8) > I suspect this is the problem (or very closely related to) I've been living > with for months (I'm running evo 3.4.3 from debian testing). > > From a users perspective, it's a total deal breaker. More than half the time I > want to view any of my caldav calendars, it results in a UI lockup, if accessed > either via evolution itself or via the drop down calendar from the desktop > clock. > > If evolution itself hangs, it can be cleared by killing all > evolution-calendar-factory processes. If the desktop clock hangs, the entire > window manager seems to lock up, and unless you have a console open you have no > way to open a new one to clear the problem (or drop to console/remote ssh). Ok so the problem is likely in evolution-calendar-factory and not in evolution, and wont turning the constructors into async ones really solve it. That'll just let the UI continue running while the async constructor waits for the same failure coming from evolution-calendar-factory. Can a developer of the Evolution team give us instructions on how to run evolution-calendar-factory in such a way that we can give a more clear view on what is going on / wrong?
(In reply to comment #9) > Can a developer of the Evolution team give us instructions on how to run > evolution-calendar-factory in such a way that we can give a more clear view on > what is going on / wrong? Sure, run /usr/libexec/evolution-calendar-factory under gdb. Use the --keep-running command-line option to disable its inactivity timeout.
(In reply to comment #10) > (In reply to comment #9) > > Can a developer of the Evolution team give us instructions on how to run > > evolution-calendar-factory in such a way that we can give a more clear view on > > what is going on / wrong? > > Sure, run /usr/libexec/evolution-calendar-factory under gdb. > > Use the --keep-running command-line option to disable its inactivity timeout. Interesting. When I run it in gdb with --keep-running, it all works fine. An issue with DBus service activation on Debian testing?
FYI pvanhoof@lors:~$ cat /usr/share/dbus-1/services/org.gnome.evolution.dataserver.Calendar.service [D-BUS Service] Name=org.gnome.evolution.dataserver.Calendar1 Exec=/usr/lib/evolution/evolution-calendar-factory pvanhoof@lors:~$ ls -alh /usr/lib/evolution/evolution-calendar-factory -rwxr-xr-x 1 root root 14K Jun 19 19:42 /usr/lib/evolution/evolution-calendar-factory pvanhoof@lors:~$
As part of the migration off of GConf, our D-Bus interfaces changed slightly. Evolution 3.5 needs a D-Bus service named Calendar3, which is provided by Evolution-Data-Server 3.5. Evolution-Data-Server 3.4 provides Calendar1. Since Debian Testing is on GNOME 3.4, trying to run Evolution 3.5 with D-Bus services provided by Debian Testing won't work. D-Bus most likely doesn't know where to find the service names provided by E-D-S 3.5. Starting the service manually or adding a <servicedir> element to /etc/dbus-1/session.conf are the easiest fixes. If you're running them manually, note that there's a 3rd D-Bus service now which must be started first: $(LIBEXECDIR)/evolution-source-registry
Can you paste here the <servicedir> element that must be added? Then I can test this and perhaps forward the bug to the Debian packager. Does anybody know who that is. A good idea might be to add this individual in CC of this bug.
http://packages.debian.org/squeeze/evolution lists maintainers at the right.
Debian doesn't need to change their packaging since they'll have to update their Evolution and Evolution-Data-Server packages to 3.6 simultaneously. It sounds like you were trying to run Evo 3.5 with D-Bus services from E-D-S 3.4. Assuming you installed Evolution-Data-Server 3.5.x to your own private install prefix (say "/opt/gnome/"), for D-Bus to activate those services it needs to know where to find D-Bus service files within that prefix: <servicedir>/opt/gnome/share/dbus-1/services</servicedir> Then it's a matter of restarting the session bus.
I didn't install a custom eds or evo. This system is all standard apt-get installed packages.
So basically org.gnome.evolution.dataserver.Calendar.service should be using Name=org.gnome.evolution.dataserver.Calendar3 but is right now using Name=org.gnome.evolution.dataserver.Calendar1 ? lors:~# dpkg -S /usr/share/dbus-1/services/org.gnome.evolution.dataserver.Calendar.service evolution-data-server-common: /usr/share/dbus-1/services/org.gnome.evolution.dataserver.Calendar.service lors:~# Package: evolution-data-server-common Status: install ok installed Priority: optional Section: gnome Installed-Size: 8407 Maintainer: Debian Evolution Maintainers <pkg-evolution-maintainers@lists.alioth.debian.org> Architecture: all Source: evolution-data-server Version: 3.4.3-1 Depends: dconf-gsettings-backend | gsettings-backend Description: architecture independent files for Evolution Data Server The data server, called "Evolution Data Server" is responsible for managing calendar and addressbook information. . This package contains the architecture independent files needed by the evolution-data-server package. Homepage: http://www.gnome.org/projects/evolution/ lors:~#
Oh, also notice the dpkg -s commands that I copy pasted in earlier comments: I don't have 3.5 installed: lors:~# dpkg -s evolution evolution-data-server evolution-data-server-common | grep Version Version: 3.4.3-1 Version: 3.4.3-1 Version: 3.4.3-1 lors:~#
I would try to reproduce the issue, and while UI is waiting, get a backtrace of (probably running but stuck) evolution-calendar-factory process. If it's not running, then it's an issue on DBus side, on the activation of the factory.
(In reply to comment #20) > I would try to reproduce the issue, and while UI is waiting, get a backtrace of > (probably running but stuck) evolution-calendar-factory process. If it's not > running, then it's an issue on DBus side, on the activation of the factory. And what is the info you need?
While evo is in hung/waiting state check: a) evolution-calendar-factory is running b) if yes, get a backtrace of it (t a a bt), to see why it doesn't respond Make sure the backtrace will not contain any private information, like passwords (I usually search for "pass" (quotes for clarity only) in it).
Hi, Just locked up for me - I didn't have debug info installed for the data server unfortunately, but here is a backtrace as requested. I'll do another one next time it locks up if you need more info. $ dpkg -s evolution evolution-data-server evolution-data-server-common |grep Version Version: 3.4.3-1 Version: 3.4.3-1 Version: 3.4.3-1 $ ps auxf |grep cal mace 6867 0.0 0.3 647096 27688 ? Sl 19:06 0:08 /usr/lib/evolution/evolution-calendar-factory $ gdb /usr/lib/evolution/evolution-calendar-factory 6867 GNU gdb (GDB) 7.4.1-debian Copyright (C) 2012 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/evolution/evolution-calendar-factory...(no debugging symbols found)...done. Attaching to program: /usr/lib/evolution/evolution-calendar-factory, process 6867 Reading symbols from /usr/lib/libedata-cal-1.2.so.15...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libedata-cal-1.2.so.15 Reading symbols from /usr/lib/libebackend-1.2.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libebackend-1.2.so.2 Reading symbols from /usr/lib/libedataserver-1.2.so.16...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libedataserver-1.2.so.16 Reading symbols from /usr/lib/libical.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libical.so.0 Reading symbols from /lib/x86_64-linux-gnu/libpthread.so.0...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/libpthread-2.13.so...done. [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [New Thread 0x7f6e917fa700 (LWP 6885)] [New Thread 0x7f6e91ffb700 (LWP 6884)] [New Thread 0x7f6e927fc700 (LWP 6883)] [New Thread 0x7f6e92ffd700 (LWP 6882)] [New Thread 0x7f6e937fe700 (LWP 6881)] [New Thread 0x7f6ea37fe700 (LWP 6874)] [New Thread 0x7f6ea884d700 (LWP 6872)] [New Thread 0x7f6ea9a58700 (LWP 6870)] [New Thread 0x7f6eb4e5b700 (LWP 6868)] done. Loaded symbols for /lib/x86_64-linux-gnu/libpthread.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libdbus-glib-1.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libdbus-glib-1.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 Reading symbols from /lib/x86_64-linux-gnu/libglib-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libglib-2.0.so.0 Reading symbols from /lib/x86_64-linux-gnu/libc.so.6...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/libc-2.13.so...done. done. Loaded symbols for /lib/x86_64-linux-gnu/libc.so.6 Reading symbols from /usr/lib/libecal-1.2.so.11...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libecal-1.2.so.11 Reading symbols from /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgmodule-2.0.so.0 Reading symbols from /lib/x86_64-linux-gnu/librt.so.1...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/librt-2.13.so...done. done. Loaded symbols for /lib/x86_64-linux-gnu/librt.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libsoup-2.4.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libsoup-2.4.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libplds4.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libplds4.so Reading symbols from /usr/lib/x86_64-linux-gnu/libplc4.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libplc4.so Reading symbols from /usr/lib/x86_64-linux-gnu/libnspr4.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libnspr4.so Reading symbols from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0 Reading symbols from /usr/lib/libicalss.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libicalss.so.0 Reading symbols from /usr/lib/libicalvcal.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libicalvcal.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libxml2.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libxml2.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/libgconf-2.so.4...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgconf-2.so.4 Reading symbols from /usr/lib/x86_64-linux-gnu/libsqlite3.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libdb-5.1.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libdb-5.1.so 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 /lib/x86_64-linux-gnu/libdbus-1.so.3...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libdbus-1.so.3 Reading symbols from /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libffi.so.5...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libffi.so.5 Reading symbols from /lib/x86_64-linux-gnu/libpcre.so.3...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libpcre.so.3 Reading symbols from /lib/x86_64-linux-gnu/libdl.so.2...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/libdl-2.13.so...done. done. Loaded symbols for /lib/x86_64-linux-gnu/libdl.so.2 Reading symbols from /lib/x86_64-linux-gnu/libz.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libz.so.1 Reading symbols from /lib/x86_64-linux-gnu/libselinux.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libselinux.so.1 Reading symbols from /lib/x86_64-linux-gnu/libresolv.so.2...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/libresolv-2.13.so...done. done. Loaded symbols for /lib/x86_64-linux-gnu/libresolv.so.2 Reading symbols from /lib/x86_64-linux-gnu/liblzma.so.5...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/liblzma.so.5 Reading symbols from /lib/x86_64-linux-gnu/libm.so.6...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/libm-2.13.so...done. done. Loaded symbols for /lib/x86_64-linux-gnu/libm.so.6 Reading symbols from /lib/x86_64-linux-gnu/libnss_compat.so.2...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/libnss_compat-2.13.so...done. done. Loaded symbols for /lib/x86_64-linux-gnu/libnss_compat.so.2 Reading symbols from /lib/x86_64-linux-gnu/libnsl.so.1...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/libnsl-2.13.so...done. done. Loaded symbols for /lib/x86_64-linux-gnu/libnsl.so.1 Reading symbols from /lib/x86_64-linux-gnu/libnss_nis.so.2...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/libnss_nis-2.13.so...done. done. Loaded symbols for /lib/x86_64-linux-gnu/libnss_nis.so.2 Reading symbols from /lib/x86_64-linux-gnu/libnss_files.so.2...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/libnss_files-2.13.so...done. done. Loaded symbols for /lib/x86_64-linux-gnu/libnss_files.so.2 Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendfile.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendfile.so Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendweather.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendweather.so Reading symbols from /usr/lib/libgweather-3.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgweather-3.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgtk-3.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgdk-3.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libatk-1.0.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libpangocairo-1.0.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgdk_pixbuf-2.0.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libcairo-gobject.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libcairo-gobject.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libpango-1.0.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libcairo.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libcairo.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/libsoup-gnome-2.4.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libsoup-gnome-2.4.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libX11.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libX11.so.6 Reading symbols from /usr/lib/x86_64-linux-gnu/libXi.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXi.so.6 Reading symbols from /usr/lib/x86_64-linux-gnu/libXcomposite.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXcomposite.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libXdamage.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXdamage.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libXfixes.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXfixes.so.3 Reading symbols from /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libpangoft2-1.0.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libfreetype.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libfreetype.so.6 Reading symbols from /usr/lib/x86_64-linux-gnu/libfontconfig.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libfontconfig.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libXext.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXext.so.6 Reading symbols from /usr/lib/x86_64-linux-gnu/libXinerama.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXinerama.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libXrandr.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXrandr.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/libXcursor.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXcursor.so.1 Reading symbols from /lib/x86_64-linux-gnu/libpng12.so.0...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libpng12.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libpixman-1.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libpixman-1.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libxcb-shm.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libxcb-render.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libxcb-render.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libxcb.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libxcb.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libXrender.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXrender.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libgnome-keyring.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgnome-keyring.so.0 Reading symbols from /lib/x86_64-linux-gnu/libexpat.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libexpat.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libXau.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXau.so.6 Reading symbols from /usr/lib/x86_64-linux-gnu/libXdmcp.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libXdmcp.so.6 Reading symbols from /lib/x86_64-linux-gnu/libgcrypt.so.11...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libgcrypt.so.11 Reading symbols from /lib/x86_64-linux-gnu/libgpg-error.so.0...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libgpg-error.so.0 Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendexchange.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendexchange.so Reading symbols from /usr/lib/evolution-exchange/3.4/libexchange.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-exchange/3.4/libexchange.so.0 Reading symbols from /usr/lib/evolution-exchange/3.4/libexchange-storage.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-exchange/3.4/libexchange-storage.so Reading symbols from /usr/lib/evolution-exchange/3.4/libevolution-exchange-shared.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-exchange/3.4/libevolution-exchange-shared.so Reading symbols from /usr/lib/libedataserverui-3.0.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libedataserverui-3.0.so.1 Reading symbols from /usr/lib/libedata-book-1.2.so.13...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libedata-book-1.2.so.13 Reading symbols from /usr/lib/libebook-1.2.so.13...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libebook-1.2.so.13 Reading symbols from /usr/lib/evolution/3.4/libeutil.so.0...Reading symbols from /usr/lib/debug/.build-id/dd/aebec25b1c48084e233b4378976174a41ff7af.debug...done. done. Loaded symbols for /usr/lib/evolution/3.4/libeutil.so.0 Reading symbols from /usr/lib/libcamel-1.2.so.33...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libcamel-1.2.so.33 Reading symbols from /usr/lib/libgtkhtml-editor-4.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgtkhtml-editor-4.0.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libnss3.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libnss3.so Reading symbols from /usr/lib/x86_64-linux-gnu/libnssutil3.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libnssutil3.so Reading symbols from /usr/lib/x86_64-linux-gnu/libsmime3.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libsmime3.so Reading symbols from /usr/lib/x86_64-linux-gnu/libssl3.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libssl3.so Reading symbols from /usr/lib/libgtkhtml-4.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgtkhtml-4.0.so.0 Reading symbols from /usr/lib/libenchant.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libenchant.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libldap_r-2.4.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/liblber-2.4.so.2 Reading symbols from /usr/lib/evolution-exchange/3.4/libxntlm.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-exchange/3.4/libxntlm.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libkrb5.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libkrb5.so.3 Reading symbols from /usr/lib/x86_64-linux-gnu/libk5crypto.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libk5crypto.so.3 Reading symbols from /lib/x86_64-linux-gnu/libcom_err.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libcom_err.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/libgoa-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgoa-1.0.so.0 Reading symbols from /usr/lib/evolution/3.4/libevolution-utils.so.0...Reading symbols from /usr/lib/debug/.build-id/b3/a7f8201f9ba7cfe166b7d43954c712b16ed260.debug...done. done. Loaded symbols for /usr/lib/evolution/3.4/libevolution-utils.so.0 Reading symbols from /usr/lib/x86_64-linux-gnu/libgailutil-3.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgailutil-3.so.0 Reading symbols from /usr/lib/libgnome-desktop-3.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgnome-desktop-3.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/libsasl2.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libsasl2.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/libgnutls.so.26...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libgnutls.so.26 Reading symbols from /usr/lib/x86_64-linux-gnu/libkrb5support.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libkrb5support.so.0 Reading symbols from /lib/x86_64-linux-gnu/libkeyutils.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/x86_64-linux-gnu/libkeyutils.so.1 Reading symbols from /usr/lib/x86_64-linux-gnu/libtasn1.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libtasn1.so.3 Reading symbols from /usr/lib/x86_64-linux-gnu/libp11-kit.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/libp11-kit.so.0 Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendcaldav.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendcaldav.so Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendhttp.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendhttp.so Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendcontacts.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendcontacts.so Reading symbols from /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so Reading symbols from /lib/libnss_mdns4_minimal.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/libnss_mdns4_minimal.so.2 Reading symbols from /lib/x86_64-linux-gnu/libnss_dns.so.2...Reading symbols from /usr/lib/debug/lib/x86_64-linux-gnu/libnss_dns-2.13.so...done. done. Loaded symbols for /lib/x86_64-linux-gnu/libnss_dns.so.2 Reading symbols from /usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/gio/modules/libgiognutls.so Reading symbols from /usr/lib/x86_64-linux-gnu/pkcs11/gnome-keyring-pkcs11.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/x86_64-linux-gnu/pkcs11/gnome-keyring-pkcs11.so Reading symbols from /usr/lib/x86_64-linux-gnu/gconv/ISO8859-1.so...Reading symbols from /usr/lib/debug/usr/lib/x86_64-linux-gnu/gconv/ISO8859-1.so...done. done. Loaded symbols for /usr/lib/x86_64-linux-gnu/gconv/ISO8859-1.so __lll_lock_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:136 136 ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: No such file or directory. (gdb) info threads Id Target Id Frame 10 Thread 0x7f6eb4e5b700 (LWP 6868) "gmain" 0x00007f6eb8f50ac3 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87 9 Thread 0x7f6ea9a58700 (LWP 6870) "gdbus" 0x00007f6eb8f50ac3 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87 8 Thread 0x7f6ea884d700 (LWP 6872) "dconf worker" 0x00007f6eb8f50ac3 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87 7 Thread 0x7f6ea37fe700 (LWP 6874) "pool" __lll_lock_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:136 6 Thread 0x7f6e937fe700 (LWP 6881) "pool" pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216 5 Thread 0x7f6e92ffd700 (LWP 6882) "pool" pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216 4 Thread 0x7f6e927fc700 (LWP 6883) "pool" pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216 3 Thread 0x7f6e91ffb700 (LWP 6884) "pool" pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216 2 Thread 0x7f6e917fa700 (LWP 6885) "pool" pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:216 * 1 Thread 0x7f6eba6827a0 (LWP 6867) "evolution-calen" __lll_lock_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/lowlevellock.S:136 (gdb) thread apply all bt full
+ Trace 230798
Thread 7 (Thread 0x7f6ea37fe700 (LWP 6874))
Thread 1 (Thread 0x7f6eba6827a0 (LWP 6867))
No symbol table info available. (gdb) (gdb) kill Kill the program being debugged? (y or n) y (gdb) q
Milan, is Miah's backtrace sufficient for the need-info?
Miah, you will have to install debug symbols. Your backtrace reveals that it has something to do with gdbus, which is good info already, but with debugging symbols of evolution and evolution-data-server you'll get a much better bt for the developers.
Please install debuginfo at least for libsoup, glib and evolution-data-server. The thing I see in the comment #23 is that there is one CalDAV calendar trying to do something with libsoup (talk to the server) in a dedicated thread, while libsoup is busy and blocking thread 1, thus the factory cannot respond to the requests sent by evolution. The question is what libsoup tries to do on the main thread on its own. By the way, what is the exact libsoup version you have, please?
pvanhoof@lors:~$ dpkg -s libsoup2.4-1 Package: libsoup2.4-1 Status: install ok installed Priority: optional Section: libs Installed-Size: 510 Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org> Architecture: i386 Multi-Arch: same Source: libsoup2.4 Version: 2.38.1-2 Depends: libc6 (>= 2.4), libglib2.0-0 (>= 2.31.8), libxml2 (>= 2.7.4), zlib1g (>= 1:1.1.4), glib-networking (>= 2.32.0) Pre-Depends: multiarch-support Description: HTTP library implementation in C -- Shared library It was originally part of a SOAP (Simple Object Access Protocol) implementation called Soup, but the SOAP and non-SOAP parts have now been split into separate packages. . libsoup uses the Glib main loop and is designed to work well with GTK+ applications. This enables GNOME applications to access HTTP servers on the network in a completely asynchronous fashion, very similar to the GTK+ programming model (a synchronous operation mode is also supported for those who want it). . Features: * Both asynchronous (GMainLoop and callback-based) and synchronous APIs * Automatically caches connections * SSL Support using GnuTLS * Proxy support, including authentication and SSL tunneling * Client support for Digest, NTLM, and Basic authentication * Server support for Digest and Basic authentication * Basic client-side SOAP and XML-RPC support . This package contains the shared library. pvanhoof@lors:~$ dpkg -s libsoup-gnome2.4-1 Package: libsoup-gnome2.4-1 Status: install ok installed Priority: optional Section: libs Installed-Size: 89 Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org> Architecture: i386 Multi-Arch: same Source: libsoup2.4 Version: 2.38.1-2 Depends: libc6 (>= 2.1.3), libglib2.0-0 (>= 2.31.7), libgnome-keyring0 (>= 2.20.3), libsoup2.4-1 (>= 2.33.92), libsqlite3-0 (>= 3.5.9), libxml2 (>= 2.6.27), zlib1g (>= 1:1.1.4) Pre-Depends: multiarch-support Description: HTTP library implementation in C -- GNOME support library It was originally part of a SOAP (Simple Object Access Protocol) implementation called Soup, but the SOAP and non-SOAP parts have now been split into separate packages. . libsoup uses the Glib main loop and is designed to work well with GTK+ applications. This enables GNOME applications to access HTTP servers on the network in a completely asynchronous fashion, very similar to the GTK+ programming model (a synchronous operation mode is also supported for those who want it). . The GNOME support library is used for features which are important to GNOME apps, but which require GNOME-specific libraries that non-GNOME apps may not want to add dependencies on. . Features: * Both asynchronous (GMainLoop and callback-based) and synchronous APIs * Automatically caches connections * SSL Support using GnuTLS * Proxy support, including authentication and SSL tunneling * Client support for Digest, NTLM, and Basic authentication * Server support for Digest and Basic authentication * Basic client-side SOAP and XML-RPC support . This package contains the GNOME support shared library. pvanhoof@lors:~$
basically the same version as I have in my Fedora 17 box. I have libsoup-2.38.1-1.fc17.x86_64 (see how short it could be) :)
My libsoup version is identical to Philips: 2.38.1-2. I've installed all the debug packages and will post a backtrace when I get one and I'm not in a hurry!
Another day, another backtrace.. :) Hope this is of more use. (gdb) thread apply all bt full
+ Trace 230815
Thread 7 (Thread 0x7f2a4effd700 (LWP 5667))
Thread 1 (Thread 0x7f2a6da6f7a0 (LWP 5638))
Thanks for the update, it's much better. Dan, is this issue known for you, please?
Do you by any chance have the refresh time on your calendar set to 5 minutes? (If so, setting it to anything else should make the hang go away.)
(In reply to comment #32) > Do you by any chance have the refresh time on your calendar set to 5 minutes? > > (If so, setting it to anything else should make the hang go away.) Hmm, what is so special on 5 minutes interval? :) Philip, such change requires restart of evolution-calendar-factory, to take the change into effect. I'm mentioning it just in case. The 3.6.0 will not require that restart, as the calendars are listening for refresh interval changes.
The intervals of my two online calendars are 30 and 60 minutes. The first time I tried to open the preferences of one of the online calendars, I had the hang again.
Hm... I'll have to look at the code some more. I think it should be fixed in git master, but AFAICT, this hang should only be possible if it opens a new connection more-or-less exactly 5 minutes after the last previous connection is closed.
More or less exactly is a funny way of putting that it's not exactly at all? ;-) I can usually reproduce this 100% by means of an action, not based on a timed event. For example opening an e-mail with a calendar item in. Or clicking on the "Calendar" button (just doing anything related to calendars). When I run /usr/lib/evolution/evolution-calendar-factory manually (for example in a terminal) the problem goes away and can afterward not be reproduced anymore (until after reboot). (ps. this is a standard debian testing, apt-get upgraded today)
(In reply to comment #36) > When I run /usr/lib/evolution/evolution-calendar-factory manually (for example > in a terminal) the problem goes away and can afterward not be reproduced > anymore (until after reboot). Might be because the auto-start is caused by a request to do something, thus the factory runs and the request for a calendar is fired immediately, while if you run the factory on your own, then it has a little delay after start. I do not think it should make such difference, it just looks like it does for you.
Created attachment 224103 [details] [review] SoupSession: when freeing an "unused" host, make sure it's still unused If someone could test this patch (against 2.38), that would be good...
Comment on attachment 224103 [details] [review] SoupSession: when freeing an "unused" host, make sure it's still unused This fix is in libsoup 2.40, so now I guess we're just waiting for someone to test against that...
(In reply to comment #39) > (From update of attachment 224103 [details] [review]) > This fix is in libsoup 2.40, so now I guess we're just waiting for someone to > test against that... Unlike Miah's stack traces aren't mine ending in connection_disconnected at soup-session.c line 1841. Are you sure my stack traces are related to what Miah was seeing?
Note again that when I run /usr/lib/evolution/evolution-calendar-factory on a console manually that I can't reproduce the original issue (which isn't necessarily related to what Miah is seeing here, but good that Dan fixed it anyway in libsoap). I think this piece of information is very important to consider for whoever works on this issue. All other info is in the bug already (versions, etc, current Debian testing): pvanhoof@lors:/tmp$ dpkg -s evolution | grep Version Version: 3.4.3-1 pvanhoof@lors:/tmp$ pvanhoof@lors:/tmp$ dpkg -s evolution-data-server | grep Version Version: 3.4.3-1 pvanhoof@lors:/tmp$ pvanhoof@lors:/tmp$ dpkg -s libsoup2.4-1 | grep Version Version: 2.38.1-2 pvanhoof@lors:/tmp$ Issue is still reproducable, although not always since more recent upgrades of my Debian testing I think that the Debian maintainer should be put in CC and asked not to move the package to Release before this bug is fixed. But that's just my opinion.
(In reply to comment #40) > Unlike Miah's stack traces aren't mine ending in connection_disconnected at > soup-session.c line 1841. Are you sure my stack traces are related to what Miah > was seeing? The stack traces you attached to this bug were from evolution, not evolution-calendar-factory. (In reply to comment #41) > Note again that when I run /usr/lib/evolution/evolution-calendar-factory on a > console manually that I can't reproduce the original issue The hang is caused by a race condition. I don't have a good answer for why it gets triggered reliably in one situation but not in the other, but that's not entirely implausible behavior for a race condition bug.
(In reply to comment #42) > (In reply to comment #40) > > Unlike Miah's stack traces aren't mine ending in connection_disconnected at > > soup-session.c line 1841. Are you sure my stack traces are related to what Miah > > was seeing? > > The stack traces you attached to this bug were from evolution, not > evolution-calendar-factory. Ack. Now I remember. Indeed, I already knew this but I must have forgotten about this as the bug grew older. Never mind and yes Miah's stack traces of evolution-calendar-factory are probably showing the problem. > (In reply to comment #41) > > Note again that when I run /usr/lib/evolution/evolution-calendar-factory on a > > console manually that I can't reproduce the original issue > > The hang is caused by a race condition. I don't have a good answer for why it > gets triggered reliably in one situation but not in the other, but that's not > entirely implausible behavior for a race condition bug. I agree. Let's hope the issue is gone then. Perhaps I'll later this week test my putting your patch in debian/ of the libsoup of my system and installing the resulting .deb. Feel free to put the bug in resolved if you're confident that this mutex-lock was the core cause of the problem.
When testing on Debian testing, which still has the exact same version of libsoup as I reported earlier: libtool: compile: gcc -DHAVE_CONFIG_H -I. -I.. -DG_LOG_DOMAIN=\"libsoup\" -I.. -pthread -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -DG_DISABLE_SINGLE_INCLUDES -I/usr/include/libxml2 -I/usr/include/gnome-keyring-1 -I/usr/include/glib-2.0 -I/usr/lib/i386-linux-gnu/glib-2.0/include -D_FORTIFY_SOURCE=2 -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -Wall -Wall -Wstrict-prototypes -Werror=missing-prototypes -Werror=implicit-function-declaration -Werror=pointer-arith -Werror=init-self -Werror=format=2 -Werror=missing-include-dirs -Werror=aggregate-return -Werror=declaration-after-statement -c soup-session.c -fPIC -DPIC -o .libs/soup-session.o soup-session.c: In function 'free_unused_host': soup-session.c:1827:24: error: 'SoupSessionPrivate' has no member named 'conn_lock' make[4]: *** [soup-session.lo] Error 1 make[4]: Leaving directory `/tmp/libsoup2.4-2.38.1/libsoup' make[3]: *** [all] Error 2 make[3]: Leaving directory `/tmp/libsoup2.4-2.38.1/libsoup' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/tmp/libsoup2.4-2.38.1' make[1]: *** [all] Error 2 make[1]: Leaving directory `/tmp/libsoup2.4-2.38.1' make: *** [debian/stamp-makefile-build] Error 2 dpkg-buildpackage: error: debian/rules build gave error exit status 2 lors:/tmp/libsoup2.4-2.38.1# vi libsoup/soup-session.c lors:/tmp/libsoup2.4-2.38.1# lors:/tmp/libsoup2.4-2.38.1# cat debian/patches/gnome-bug-682923.diff Description: SoupSession: when freeing an "unused" host, make sure it's still unused In a multithreaded session, it's possible that a new connection will be opened on a host while free_unused_host() is waiting to get conn_lock. So check for that before freeing it. https://bugzilla.gnome.org/show_bug.cgi?id=682923 . libsoup2.4 (2.38.1-3) unstable; urgency=low . * patch Author: Philip Van Hoof <philip@codeminded.be> --- The information above should follow the Patch Tagging Guidelines, please checkout http://dep.debian.net/deps/dep3/ to learn about the format. Here are templates for supplementary fields that you might want to add: Origin: <vendor|upstream|other>, <url of original patch> Bug: <url in upstream bugtracker> Bug-Debian: http://bugs.debian.org/<bugnumber> Bug-Ubuntu: https://launchpad.net/bugs/<bugnumber> Forwarded: <no|not-needed|url proving that it has been forwarded> Reviewed-By: <name and email of someone who approved the patch> Last-Update: <YYYY-MM-DD> --- libsoup2.4-2.38.1.orig/libsoup/soup-session.c +++ libsoup2.4-2.38.1/libsoup/soup-session.c @@ -1819,6 +1819,15 @@ free_unused_host (gpointer user_data) SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (host->session); g_mutex_lock (&priv->host_lock); + + /* In a multithreaded session, a connection might have been + * added while we were waiting for conn_lock. + */ + if (host->connections) { + g_mutex_unlock (&priv->conn_lock); + return FALSE; + } + /* This will free the host in addition to removing it from the * hash table */ lors:/tmp/libsoup2.4-2.38.1#
btw. Above compiler error makes it sound very unlikely that the hang that I can still reproduce with today's Debian testing (dist-upgraded today) has much to do with a in Debian testing non-existing conn_lock in soap-session.c of libsoup. New stack traces of today's hang: pvanhoof@lors:/boot$ ps aux | grep evo pvanhoof 2560 0.0 0.3 60056 13368 ? SLl 15:15 0:00 /usr/lib/evolution/3.4/evolution-alarm-notify pvanhoof 2658 0.1 0.3 131516 14992 ? Sl 15:15 0:02 /usr/lib/evolution/evolution-calendar-factory pvanhoof 2685 0.0 0.2 88736 10640 ? Sl 15:16 0:00 /usr/lib/evolution/evolution-addressbook-factory pvanhoof 10664 49.4 1.4 361956 57392 pts/4 SLl+ 15:55 0:05 evolution pvanhoof 10681 0.0 0.0 3524 784 pts/3 S+ 15:55 0:00 grep evo pvanhoof@lors:/boot$ gdb /usr/lib/evolution/evolution-calendar-factory GNU gdb (GDB) 7.4.1-debian Copyright (C) 2012 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 "i486-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/lib/evolution/evolution-calendar-factory...Reading symbols from /usr/lib/debug/.build-id/70/0bad973d31fe39c6d7d7d8450b5ac48cc221c6.debug...done. done. (gdb) cont The program is not being run. (gdb) quit \pvanhoof@lors:/boot$ gdb /usr/lib/evolution/evolution-calendar-factory 2658 GNU gdb (GDB) 7.4.1-debian Copyright (C) 2012 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 "i486-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /usr/lib/evolution/evolution-calendar-factory...Reading symbols from /usr/lib/debug/.build-id/70/0bad973d31fe39c6d7d7d8450b5ac48cc221c6.debug...done. done. Attaching to program: /usr/lib/evolution/evolution-calendar-factory, process 2658 Reading symbols from /usr/lib/libedata-cal-1.2.so.15...Reading symbols from /usr/lib/debug/.build-id/ed/34d68013684e571f184b501791921bdee05631.debug...done. done. Loaded symbols for /usr/lib/libedata-cal-1.2.so.15 Reading symbols from /usr/lib/libebackend-1.2.so.2...Reading symbols from /usr/lib/debug/.build-id/ef/7f2222059b92db9e2910c11ff3fb2a7557a5b9.debug...done. done. Loaded symbols for /usr/lib/libebackend-1.2.so.2 Reading symbols from /usr/lib/libedataserver-1.2.so.16...Reading symbols from /usr/lib/debug/.build-id/f2/b329429f4c4e6cbfc4cfb1999fdc74986c6e18.debug...done. done. Loaded symbols for /usr/lib/libedataserver-1.2.so.16 Reading symbols from /usr/lib/libical.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libical.so.0 Reading symbols from /lib/i386-linux-gnu/i686/cmov/libpthread.so.0...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/libpthread-2.13.so...done. [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/i386-linux-gnu/i686/cmov/libthread_db.so.1". [New Thread 0xad40bb70 (LWP 2701)] [New Thread 0xadc13b70 (LWP 2700)] [New Thread 0xaf416b70 (LWP 2692)] [New Thread 0xb0449b70 (LWP 2690)] [New Thread 0xb3c50b70 (LWP 2681)] [New Thread 0xb449bb70 (LWP 2680)] [New Thread 0xb69d5b70 (LWP 2678)] done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/libpthread.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libdbus-glib-1.so.2...Reading symbols from /usr/lib/debug/usr/lib/i386-linux-gnu/libdbus-glib-1.so.2.2.2...done. done. Loaded symbols for /usr/lib/i386-linux-gnu/libdbus-glib-1.so.2 Reading symbols from /usr/lib/i386-linux-gnu/libgobject-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/i386-linux-gnu/libgobject-2.0.so.0.3200.4...done. done. Loaded symbols for /usr/lib/i386-linux-gnu/libgobject-2.0.so.0 Reading symbols from /lib/i386-linux-gnu/libglib-2.0.so.0...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/libglib-2.0.so.0.3200.4...done. done. Loaded symbols for /lib/i386-linux-gnu/libglib-2.0.so.0 Reading symbols from /lib/i386-linux-gnu/i686/cmov/libc.so.6...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/libc-2.13.so...done. done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/libc.so.6 Reading symbols from /usr/lib/libecal-1.2.so.11...Reading symbols from /usr/lib/debug/.build-id/e9/54e038a5d4b2785beca9e44405903596436b66.debug...done. done. Loaded symbols for /usr/lib/libecal-1.2.so.11 Reading symbols from /usr/lib/i386-linux-gnu/libgmodule-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/i386-linux-gnu/libgmodule-2.0.so.0.3200.4...done. done. Loaded symbols for /usr/lib/i386-linux-gnu/libgmodule-2.0.so.0 Reading symbols from /lib/i386-linux-gnu/i686/cmov/librt.so.1...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/librt-2.13.so...done. done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/librt.so.1 Reading symbols from /usr/lib/i386-linux-gnu/libsoup-2.4.so.1...Reading symbols from /usr/lib/debug/.build-id/fa/ae93a2fc95320982d5aca781f267ad18b4613e.debug...done. done. Loaded symbols for /usr/lib/i386-linux-gnu/libsoup-2.4.so.1 Reading symbols from /usr/lib/i386-linux-gnu/libplds4.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libplds4.so Reading symbols from /usr/lib/i386-linux-gnu/libplc4.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libplc4.so Reading symbols from /usr/lib/i386-linux-gnu/libnspr4.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libnspr4.so Reading symbols from /usr/lib/i386-linux-gnu/libgio-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/i386-linux-gnu/libgio-2.0.so.0.3200.4...done. done. Loaded symbols for /usr/lib/i386-linux-gnu/libgio-2.0.so.0 Reading symbols from /usr/lib/libicalss.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libicalss.so.0 Reading symbols from /usr/lib/libicalvcal.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libicalvcal.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libxml2.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libxml2.so.2 Reading symbols from /usr/lib/i386-linux-gnu/libgconf-2.so.4...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libgconf-2.so.4 Reading symbols from /usr/lib/i386-linux-gnu/libsqlite3.so.0...Reading symbols from /usr/lib/debug/usr/lib/i386-linux-gnu/libsqlite3.so.0.8.6...done. done. Loaded symbols for /usr/lib/i386-linux-gnu/libsqlite3.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libdb-5.1.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libdb-5.1.so Reading symbols from /lib/ld-linux.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/ld-linux.so.2 Reading symbols from /lib/i386-linux-gnu/libdbus-1.so.3...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/libdbus-1.so.3 Reading symbols from /usr/lib/i386-linux-gnu/libgthread-2.0.so.0...Reading symbols from /usr/lib/debug/usr/lib/i386-linux-gnu/libgthread-2.0.so.0.3200.4...done. done. Loaded symbols for /usr/lib/i386-linux-gnu/libgthread-2.0.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libffi.so.5...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libffi.so.5 Reading symbols from /lib/i386-linux-gnu/libpcre.so.3...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/libpcre.so.3 Reading symbols from /lib/i386-linux-gnu/i686/cmov/libdl.so.2...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/libdl-2.13.so...done. done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/libdl.so.2 Reading symbols from /lib/i386-linux-gnu/libz.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/libz.so.1 Reading symbols from /lib/i386-linux-gnu/libselinux.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/libselinux.so.1 Reading symbols from /lib/i386-linux-gnu/i686/cmov/libresolv.so.2...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/libresolv-2.13.so...done. done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/libresolv.so.2 Reading symbols from /lib/i386-linux-gnu/liblzma.so.5...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/liblzma.so.5 Reading symbols from /lib/i386-linux-gnu/i686/cmov/libm.so.6...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/libm-2.13.so...done. done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/libm.so.6 Reading symbols from /lib/i386-linux-gnu/i686/cmov/libnss_compat.so.2...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/libnss_compat-2.13.so...done. done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/libnss_compat.so.2 Reading symbols from /lib/i386-linux-gnu/i686/cmov/libnsl.so.1...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/libnsl-2.13.so...done. done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/libnsl.so.1 Reading symbols from /lib/i386-linux-gnu/i686/cmov/libnss_nis.so.2...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/libnss_nis-2.13.so...done. done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/libnss_nis.so.2 Reading symbols from /lib/i386-linux-gnu/i686/cmov/libnss_files.so.2...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/libnss_files-2.13.so...done. done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/libnss_files.so.2 Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendcontacts.so...Reading symbols from /usr/lib/debug/.build-id/40/07ce27ba66c03a479000aaf2014225ee29c070.debug...done. done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendcontacts.so Reading symbols from /usr/lib/libebook-1.2.so.13...Reading symbols from /usr/lib/debug/.build-id/19/e0ce84fb7b984fa3e752ed2ec316e74669d589.debug...done. done. Loaded symbols for /usr/lib/libebook-1.2.so.13 Reading symbols from /usr/lib/libcamel-1.2.so.33...Reading symbols from /usr/lib/debug/.build-id/97/00bc888a0464cd9ea7bb0a8aaffa3aa59fb1f8.debug...done. done. Loaded symbols for /usr/lib/libcamel-1.2.so.33 Reading symbols from /usr/lib/i386-linux-gnu/libnss3.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libnss3.so Reading symbols from /usr/lib/i386-linux-gnu/libnssutil3.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libnssutil3.so Reading symbols from /usr/lib/i386-linux-gnu/libsmime3.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libsmime3.so Reading symbols from /usr/lib/i386-linux-gnu/libssl3.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libssl3.so Reading symbols from /usr/lib/i386-linux-gnu/libkrb5.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libkrb5.so.3 Reading symbols from /usr/lib/i386-linux-gnu/libk5crypto.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libk5crypto.so.3 Reading symbols from /lib/i386-linux-gnu/libcom_err.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/libcom_err.so.2 Reading symbols from /usr/lib/i386-linux-gnu/libgssapi_krb5.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libgssapi_krb5.so.2 Reading symbols from /usr/lib/i386-linux-gnu/libkrb5support.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libkrb5support.so.0 Reading symbols from /lib/i386-linux-gnu/libkeyutils.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/libkeyutils.so.1 Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendexchange.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendexchange.so Reading symbols from /usr/lib/evolution-exchange/3.4/libexchange.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-exchange/3.4/libexchange.so.0 Reading symbols from /usr/lib/evolution-exchange/3.4/libexchange-storage.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-exchange/3.4/libexchange-storage.so Reading symbols from /usr/lib/evolution-exchange/3.4/libevolution-exchange-shared.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-exchange/3.4/libevolution-exchange-shared.so Reading symbols from /usr/lib/libedataserverui-3.0.so.1...Reading symbols from /usr/lib/debug/.build-id/69/53b29ccd2dd7dbbc4e96aeb53380de3b4de734.debug...done. done. Loaded symbols for /usr/lib/libedataserverui-3.0.so.1 Reading symbols from /usr/lib/libedata-book-1.2.so.13...Reading symbols from /usr/lib/debug/.build-id/51/8e5af860f8d48450a4e92a45a16614bd5ae8fe.debug...done. done. Loaded symbols for /usr/lib/libedata-book-1.2.so.13 Reading symbols from /usr/lib/evolution/3.4/libeutil.so.0...Reading symbols from /usr/lib/debug/.build-id/67/d840696ac90e55af4dc1f82ab61e8fa321162e.debug...done. done. Loaded symbols for /usr/lib/evolution/3.4/libeutil.so.0 Reading symbols from /usr/lib/libgtkhtml-editor-4.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgtkhtml-editor-4.0.so.0 Reading symbols from /usr/lib/libgtkhtml-4.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgtkhtml-4.0.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libgtk-3.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libgtk-3.so.0 Reading symbols from /usr/lib/libenchant.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libenchant.so.1 Reading symbols from /usr/lib/i386-linux-gnu/libgdk-3.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libgdk-3.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libatk-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libatk-1.0.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libpangocairo-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libpangocairo-1.0.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libgdk_pixbuf-2.0.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libcairo-gobject.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libcairo-gobject.so.2 Reading symbols from /usr/lib/i386-linux-gnu/libpango-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libpango-1.0.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libcairo.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libcairo.so.2 Reading symbols from /usr/lib/i386-linux-gnu/libldap_r-2.4.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libldap_r-2.4.so.2 Reading symbols from /usr/lib/i386-linux-gnu/liblber-2.4.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/liblber-2.4.so.2 Reading symbols from /usr/lib/evolution-exchange/3.4/libxntlm.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/evolution-exchange/3.4/libxntlm.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libgnome-keyring.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libgnome-keyring.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libgoa-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libgoa-1.0.so.0 Reading symbols from /usr/lib/evolution/3.4/libevolution-utils.so.0...Reading symbols from /usr/lib/debug/.build-id/57/0d1da3f58967a85bd01b9e2abd2ac57eeeadb5.debug...done. done. Loaded symbols for /usr/lib/evolution/3.4/libevolution-utils.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libgailutil-3.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libgailutil-3.so.0 Reading symbols from /usr/lib/libgnome-desktop-3.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgnome-desktop-3.so.2 Reading symbols from /usr/lib/i386-linux-gnu/libX11.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libX11.so.6 Reading symbols from /usr/lib/i386-linux-gnu/libXi.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXi.so.6 Reading symbols from /usr/lib/i386-linux-gnu/libXcomposite.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXcomposite.so.1 Reading symbols from /usr/lib/i386-linux-gnu/libXdamage.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXdamage.so.1 Reading symbols from /usr/lib/i386-linux-gnu/libXfixes.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXfixes.so.3 Reading symbols from /usr/lib/i386-linux-gnu/libpangoft2-1.0.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libpangoft2-1.0.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libfreetype.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libfreetype.so.6 Reading symbols from /usr/lib/i386-linux-gnu/libfontconfig.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libfontconfig.so.1 Reading symbols from /usr/lib/i386-linux-gnu/libXext.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXext.so.6 Reading symbols from /usr/lib/i386-linux-gnu/libXinerama.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXinerama.so.1 Reading symbols from /usr/lib/i386-linux-gnu/libXrandr.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXrandr.so.2 Reading symbols from /usr/lib/i386-linux-gnu/libXcursor.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXcursor.so.1 Reading symbols from /lib/i386-linux-gnu/libpng12.so.0...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/libpng12.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libpixman-1.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libpixman-1.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libxcb-shm.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libxcb-shm.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libxcb-render.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libxcb-render.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libxcb.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libxcb.so.1 Reading symbols from /usr/lib/i386-linux-gnu/libXrender.so.1...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXrender.so.1 Reading symbols from /usr/lib/i386-linux-gnu/libsasl2.so.2...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libsasl2.so.2 Reading symbols from /usr/lib/i386-linux-gnu/libgnutls.so.26...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libgnutls.so.26 Reading symbols from /lib/i386-linux-gnu/libgcrypt.so.11...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/libgcrypt.so.11 Reading symbols from /lib/i386-linux-gnu/libexpat.so.1...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/libexpat.so.1 Reading symbols from /usr/lib/i386-linux-gnu/libXau.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXau.so.6 Reading symbols from /usr/lib/i386-linux-gnu/libXdmcp.so.6...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libXdmcp.so.6 Reading symbols from /usr/lib/i386-linux-gnu/libtasn1.so.3...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libtasn1.so.3 Reading symbols from /usr/lib/i386-linux-gnu/libp11-kit.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/libp11-kit.so.0 Reading symbols from /lib/i386-linux-gnu/libgpg-error.so.0...(no debugging symbols found)...done. Loaded symbols for /lib/i386-linux-gnu/libgpg-error.so.0 Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendweather.so...Reading symbols from /usr/lib/debug/.build-id/50/87798992079994257a940ceba5b71fb6bef493.debug...done. done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendweather.so Reading symbols from /usr/lib/libgweather-3.so.0...(no debugging symbols found)...done. Loaded symbols for /usr/lib/libgweather-3.so.0 Reading symbols from /usr/lib/i386-linux-gnu/libsoup-gnome-2.4.so.1...Reading symbols from /usr/lib/debug/.build-id/7f/1f87439f80642da7cf330d15034d06267b839f.debug...done. done. Loaded symbols for /usr/lib/i386-linux-gnu/libsoup-gnome-2.4.so.1 Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendcaldav.so...Reading symbols from /usr/lib/debug/.build-id/e2/8e1353d3479e08d0f9f5652fccf16f6660a2c8.debug...done. done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendcaldav.so Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendfile.so...Reading symbols from /usr/lib/debug/.build-id/5f/f5df35e2b5bdc2a87cbf74f00db6808c1b2f1f.debug...done. done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendfile.so Reading symbols from /usr/lib/evolution-data-server/calendar-backends/libecalbackendhttp.so...Reading symbols from /usr/lib/debug/.build-id/cc/9071a292df17691e50257ffdb5f755b7e4335a.debug...done. done. Loaded symbols for /usr/lib/evolution-data-server/calendar-backends/libecalbackendhttp.so Reading symbols from /usr/lib/i386-linux-gnu/gio/modules/libdconfsettings.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/gio/modules/libdconfsettings.so Reading symbols from /lib/libnss_mdns4_minimal.so.2...(no debugging symbols found)...done. Loaded symbols for /lib/libnss_mdns4_minimal.so.2 Reading symbols from /lib/i386-linux-gnu/i686/cmov/libnss_dns.so.2...Reading symbols from /usr/lib/debug/lib/i386-linux-gnu/i686/cmov/libnss_dns-2.13.so...done. done. Loaded symbols for /lib/i386-linux-gnu/i686/cmov/libnss_dns.so.2 Reading symbols from /usr/lib/i386-linux-gnu/gio/modules/libgiognutls.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/gio/modules/libgiognutls.so Reading symbols from /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so...(no debugging symbols found)...done. Loaded symbols for /usr/lib/i386-linux-gnu/pkcs11/gnome-keyring-pkcs11.so Reading symbols from /usr/lib/i386-linux-gnu/gconv/ISO8859-1.so...Reading symbols from /usr/lib/debug/usr/lib/i386-linux-gnu/gconv/ISO8859-1.so...done. done. Loaded symbols for /usr/lib/i386-linux-gnu/gconv/ISO8859-1.so 0xb7750822 in ?? () from /lib/ld-linux.so.2 (gdb) cont Continuing. ^C Program received signal SIGINT, Interrupt. 0xb7750822 in ?? () from /lib/ld-linux.so.2 (gdb) thread apply all bt
+ Trace 231183
Thread 5 (Thread 0xb0449b70 (LWP 2690))
Thread 1 (Thread 0xb6b83720 (LWP 2658))
This is the exact line in the Debian testing package where it hangs: Good luck Dan. static void connection_disconnected (SoupConnection *conn, gpointer user_data) { SoupSession *session = user_data; SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (session); SoupSessionHost *host; # Line 1841: g_mutex_lock (&priv->host_lock); # Line 1842: host = g_hash_table_lookup (priv->conns, conn); if (host) { g_hash_table_remove (priv->conns, conn); host->connections = g_slist_remove (host->connections, conn); host->num_conns--; /* Free the SoupHost (and its SoupAddress) if there * has not been any new connection to the host during * the last HOST_KEEP_ALIVE msecs. */ if (host->num_conns == 0) { g_assert (host->keep_alive_src == NULL); host->keep_alive_src = soup_add_timeout (priv->async_context, HOST_KEEP_ALIVE, free_unused_host, host); host->keep_alive_src = g_source_ref (host->keep_alive_src); } if (soup_connection_get_ssl_fallback (conn)) host->ssl_fallback = TRUE; } g_signal_handlers_disconnect_by_func (conn, connection_disconnected, session); priv->num_conns--; g_mutex_unlock (&priv->host_lock); g_object_unref (conn); }
ps. Looks like thread 1 and thread 5 disconnecting simultaneously. ps. Unit tests of building the package in Debian testing also hang at lt-auth-test. lors:/boot# gdb /tmp/libsoup2.4-2.38.1/tests/.libs/lt-auth-test 17137 (gdb) thread apply all bt
+ Trace 231184
Thread 1 (Thread 0x40726be0 (LWP 17137))
Verified not reproducable when incorrectly removing the lock and unlock from connection_disconnected in soup-session.c and rebuilding the package (note that removing the lock is incorrect, but I don't know soup well enough to come up with a correct patch).
(In reply to comment #44) > soup-session.c: In function 'free_unused_host': > soup-session.c:1827:24: error: 'SoupSessionPrivate' has no member named > 'conn_lock' Oh, oops. "conn_lock" should be "host_lock" there. (It got renamed between 2.38 and 2.40.)
(In reply to comment #49) > (In reply to comment #44) > > soup-session.c: In function 'free_unused_host': > > soup-session.c:1827:24: error: 'SoupSessionPrivate' has no member named > > 'conn_lock' > > Oh, oops. "conn_lock" should be "host_lock" there. (It got renamed between 2.38 > and 2.40.) This is code of libsoup 2.38.1-2. When I would put a unlock on host_lock at the place where your patch is adding a unlock of conn_lock, I don't see anything that would be much different from the existing current code except that the lock is unlocked before the g_hash_table_remove (a change of which I don't think it will affect much the problem as illustrated in the gdb stack trace of Comment #47). Because of that I don't think that adapting the patch to rename conn_lock to host_lock will solve the issue. To be honest I think the issue is also at the caller of libsoup: is it normal and ok that free_unused_host is called simultaneously (disconnecting a libsoup service)? In that's ok, then the issue is indeed in libsoup. However, I don't think your patch, with conn_lock renamed to host_lock, would solve it. static gboolean free_unused_host (gpointer user_data) { SoupSessionHost *host = (SoupSessionHost *) user_data; SoupSessionPrivate *priv = SOUP_SESSION_GET_PRIVATE (host->session); g_mutex_lock (&priv->host_lock); /* This will free the host in addition to removing it from the * hash table */ if (host->uri->scheme == SOUP_URI_SCHEME_HTTPS) g_hash_table_remove (priv->https_hosts, host->uri); else g_hash_table_remove (priv->http_hosts, host->uri); g_mutex_unlock (&priv->host_lock); return FALSE; } Good luck.
Review of attachment 224103 [details] [review]: I don't think this patch solves the issue.
(In reply to comment #50) > This is code of libsoup 2.38.1-2. When I would put a unlock on host_lock at the > place where your patch is adding a unlock of conn_lock, I don't see anything > that would be much different from the existing current code except that the > lock is unlocked before the g_hash_table_remove Read the patch more carefully. Or better yet, actually try it. Anyway, this is fixed. (The auth-test failure is unrelated.)