[packagekit] People who maintain threaded backends...

Richard Hughes hughsient at gmail.com
Wed Mar 10 09:14:42 PST 2010


If you're using a threaded backend and every now and then you get a
crash which is very hard to debug:

#0  _dbus_connection_lock (connection=0x6e672f67) at dbus-connection.c:355
#1  0x007c7ed6 in _dbus_pending_call_get_connection_and_lock
(pending=0xb660b6e0) at dbus-pending-call.c:307
#2  0x007b8976 in reply_handler_timeout (data=0xb660b6e0) at
dbus-connection.c:3156
#3  0x007ccdf3 in dbus_timeout_handle (timeout=0xb1ffecd0) at dbus-timeout.c:473
#4  0x002c5061 in timeout_handler_dispatch (data=0xb660ea10) at dbus-gmain.c:343
#5  0x05afc6ad in g_timeout_dispatch (source=0xb1ffedf8,
callback=0x2c5040 <timeout_handler_dispatch>, user_data=0xb660ea10) at
gmain.c:3396
#6  0x05afbf45 in g_main_dispatch (context=0x809a370) at gmain.c:1960
#7  IA__g_main_context_dispatch (context=0x809a370) at gmain.c:2513
#8  0x05affc98 in g_main_context_iterate (context=0x5ca540, block=1,
dispatch=1, self=0x808f8a8) at gmain.c:2591
#9  0x05b001ef in IA__g_main_loop_run (loop=0x80967a8) at gmain.c:2799
#10 0x0805301a in main (argc=1, argv=0xbffff704) at pk-main.c:336

I've just committed the following patch which should fix things:

commit 70767734679fd19584f1803aa23f9db23a304f20
Author: Richard Hughes <richard at hughsie.com>
Date:   Wed Mar 10 16:49:39 2010 +0000

    Do not crash libdbus when libnm-glib uses it's own context

    libnm_glib.c is trying to do something which isn't really
supported with dbus-glib
    which is using a non-default context. This crashes packagekitd
when using a threaded
    backend every 1 in 300ish times.

    Bug found by Colin Walters <cwalters at gnome.org>, many thanks

:100644 100644 3fab046... d91d68c... M  configure.ac
:100644 100644 1a3b4df... 97262dd... M  contrib/PackageKit.spec.in
:100644 100644 80d5caf... 250b0e2... M  src/Makefile.am
:100644 100644 e2530af... 28aeafc... M  src/pk-network-stack-nm.c

Thanks Colin! You might want to include this in your distro packages
if you've got bugzillas opened with backtraces like this. I'll
cherry-pick into _5_X before I do the next release.

Richard.



More information about the PackageKit mailing list