GNOME Bugzilla – Bug 754795
[PATCH] core: register G_TYPE_SOCKET early
Last modified: 2015-09-15 16:31:08 UTC
Created attachment 311015 [details] core: register G_TYPE_SOCKET early Concurrent registrations later on can cause a deadlock due to a GLib bug.
Created attachment 311046 [details] backtrace of deadlock Attaching backtrace for reference. (lrintel posted it on #nm)
(In reply to Lubomir Rintel from comment #0) > Created attachment 311015 [details] > core: register G_TYPE_SOCKET early > > Concurrent registrations later on can cause a deadlock due to a GLib bug. LGTM... but maybe you could also generously register other types as well. We anyway know that we need them (later on) and they were involved in the deadlock you saw. g_type_ensure (G_TYPE_SOCKET); g_type_ensure (G_TYPE_DBUS_CONNECTION); g_type_ensure (NM_TYPE_BUS_MANAGER); // and possibly other types that are involved in GDBus (as these objects // are used on multiple threas).
Yeah, though lets just start small and find others later if we find we need them?
merged to master as: http://cgit.freedesktop.org/NetworkManager/NetworkManager/commit/?id=9a88d72fd4a289d924ce4a6703775b0d5c9868be