Bug 26698 - Deadlock involving dbus-python and some other thread. Needs debugging.
Summary: Deadlock involving dbus-python and some other thread. Needs debugging.
Status: RESOLVED FIXED
Alias: None
Product: Telepathy
Classification: Unclassified
Component: fargo (show other bugs)
Version: unspecified
Hardware: Other All
: medium normal
Assignee: David Laban
QA Contact: Simon McVittie
URL: http://git.collabora.co.uk/?p=user/al...
Whiteboard: review+
Keywords: patch
Depends on:
Blocks:
 
Reported: 2010-02-22 06:47 UTC by David Laban
Modified: 2010-03-22 05:40 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Description David Laban 2010-02-22 06:47:56 UTC
Currently we have a deadlock which is worked around with a watchdog in telepathy_fargo.tac. This makes me very sad, and makes it hard to keep the process alive for long enough to properly benchmark it.

This is what I am currently working on. Expect a patch to dbus-python or something soon.
Comment 1 David Laban 2010-02-25 12:18:24 UTC
After a most excellent adventure into gdb+python, via http://dmalcolm.livejournal.com/4545.html and recompiling python2.5 from source, I managed to isolate the bug and fix it. While the deadlock happens because of a non-reentrant lock in dbus python, I don't think a reentrant lock would be safe, so I just pushed unregistering into an idle.

I should probably do some more load testing just to make sure we don't have any other sneaky deadlocks.
Comment 2 Simon McVittie 2010-02-25 13:50:56 UTC
This is terrifying, but looks OK. Ship it, and if you can suggest an improvement to dbus-python, please do so.
Comment 3 Simon McVittie 2010-03-17 05:49:56 UTC
Did you merge this in the end?
Comment 4 David Laban 2010-03-22 05:40:43 UTC
Oops: not pushed to origin. Done now. Closing.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.