I've verified the fix: # lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 10.04.4 LTS Release: 10.04 Codename: lucid # lrmadmin -C ; lrmadmin -CThere are 5 RA classes supported: ocf heartbeat stonith upstart lsb ^C root@virtual:~# lrmadmin -C ; lrmadmin -C ^C [add proposed archive] #apt-get update [...] # apt-get install libglib2.0-0 [...] Get:1 http://archive.ubuntu.com/ubuntu/ lucid-proposed/main libglib2.0-0 2.24.1-0ubuntu2 [1123kB] [...] # killall -9 lrmd # /etc/init.d/corosync restart * Restarting corosync daemon corosync [ OK ] # lrmadmin -C ; lrmadmin -C There are 5 RA classes supported: ocf heartbeat stonith upstart lsb There are 5 RA classes supported: ocf heartbeat stonith upstart lsb # lrmadmin -C ; lrmadmin -C There are 5 RA classes supported: ocf heartbeat stonith upstart lsb There are 5 RA classes supported: ocf heartbeat stonith upstart lsb #
** Tags removed: verification-needed ** Tags added: verification-done -- You received this bug notification because you are a member of Desktop Packages, which is subscribed to glib2.0 in Ubuntu. https://bugs.launchpad.net/bugs/887946 Title: [SRU] Deadlocks in main loop Status in “glib2.0” package in Ubuntu: Invalid Status in “glib2.0” source package in Lucid: Fix Committed Status in “glib2.0” source package in Maverick: Won't Fix Bug description: Some applications get stuck in a deadlock when utilizing glib. One of examples is lrmadmin, when connecting to lrmd. Upstream provided a fix for this bug and Ubuntu's version 11.04 and newer do not have this issue. Ubuntu 10.04 and 10.10 do not contain the fix. Upstream fix: https://mail.gnome.org/archives/commits-list/2010-November/msg01816.html [Impact] Remove potential and demonstratable deadlocks in glib code. [Development Fix] Bug is fixed in Ubuntu 11.04 and later by the simple fact that these version have newer version of glib2.0 which contains this fix. [Stable Fix] Proposed fix is cherry picked from the upstream's, at the time, latest version of glib. This part of the code did not change since then. [Test Case] * Install lucid * Install python-software-properties: apt-get install python-software-properties * add ubuntu-ha-maintainers lucid ppa and update repo: apt-add-repository ppa:ubuntu-ha-maintainers/ppa ; apt-get update * Install pacemaker: apt-get -y install pacemaker * Enable corosync (/etc/default/corosync) and start it: sed -i -e 's/START=no/START=yes/' /etc/default/corosync service corosync start * Open two client->server connections: lrmadmin -C ; lrmadmin -C It deadlocks on second run (it actually never finishes the first run). * Kill lrmd and stop corosync: killall -9 lrmd ; service corosync stop * install fix apt-get update && apt-get install libglib2.0-0 * Start corosync: service corosync start * Run the test again: lrmadmin -C ; lrmadmin -C ; lrmadmin -C ; lrmadmin -C * It doesn't deadlock. [Regression Potential] Regression potential should be very small. This change is still present in almost unmodified upstream code to this day (g_source_unref_internal of glib/gmain.c). The upstream trunk commit is at http://git.gnome.org/browse/glib/commit/?id=b358202856682e5cdefb0b4b8aaed3a45d9a85fa . To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/glib2.0/+bug/887946/+subscriptions -- Mailing list: https://launchpad.net/~desktop-packages Post to : desktop-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~desktop-packages More help : https://help.launchpad.net/ListHelp