Comment 4 for bug 975884

Revision history for this message
Paul Parsons (lost-distance) wrote :

Yes, it looks like g_dbus_connection_unregister_object() hangs:

   508 static void
   509 bus_entry_free (gpointer data)
   510 {
   511 BusEntry *entry = data;
   512
   513 g_debug("%s: calling g_dbus_connection_unregister_object", __func__);
   514 g_dbus_connection_unregister_object (bus, entry->bus_id);
   515
   516 g_debug("%s: calling g_dbus_connection_emit_signal", __func__);
   517 g_dbus_connection_emit_signal (bus,
   518 NULL,
   519 "/org/freedesktop/DisplayManager",
   520 "org.freedesktop.DisplayManager",
   521 entry->removed_signal,
   522 g_variant_new ("(o)", entry->path),
   523 NULL);
   524
   525 g_debug("%s: calling g_free (entry->path)", __func__);
   526 g_free (entry->path);
   527 g_debug("%s: calling g_free (entry->parent_path)", __func__);
   528 g_free (entry->parent_path);
   529 g_debug("%s: calling g_free (entry->removed_signal)", __func__);
   530 g_free (entry->removed_signal);
   531 g_debug("%s: calling g_free (entry)", __func__);
   532 g_free (entry);
   533 g_debug("%s: return", __func__);
   534 }

[+31.86s] DEBUG: Got signal 15 from process 2438
[+31.86s] DEBUG: Caught Terminated signal, shutting down
[+31.86s] DEBUG: Stopping display manager
[+31.86s] DEBUG: Stopping seat
[+31.86s] DEBUG: Stopping display
[+31.86s] DEBUG: Session 2075: Sending SIGTERM
[+31.87s] DEBUG: Greeter closed communication channel
[+31.87s] DEBUG: Session 2075 exited with return value 0
[+31.87s] DEBUG: Greeter quit
[+31.87s] DEBUG: Sending signal 15 to process 2070
[+32.14s] DEBUG: Process 2070 exited with return value 0
[+32.15s] DEBUG: X server stopped
[+32.15s] DEBUG: Removing X server authority /var/run/lightdm/root/:0
[+32.15s] DEBUG: Releasing VT 7
[+32.15s] DEBUG: Display server stopped
[+32.15s] DEBUG: Display stopped
[+32.15s] DEBUG: Seat stopped
[+32.15s] DEBUG: Display manager stopped
[+32.15s] DEBUG: Stopping daemon
[+32.15s] DEBUG: bus_entry_free: calling g_dbus_connection_unregister_object

Nothing more is printed, so presumably g_dbus_connection_unregister_object() hangs.