Confirmed in all cases it's just that the X11/Xmir apps can't detect the
session bus address of the login (which is on a different TTY BTW).
Forcing DBUS_SESSION_BUS_ADDRESS solves the problem.

Here are some stack traces of the hangs:

gedit:
(gdb) bt
#0  0x00007ffff705e853 in select () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007ffff477acd1 in g_spawn_sync ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ffff477b313 in g_spawn_command_line_sync ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ffff7862b70 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007ffff78645f2 in g_dbus_address_get_for_bus_sync ()
   from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#5  0x00007ffff786f7ee in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#6  0x00007ffff787522b in g_bus_get_sync ()
   from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#7  0x00007ffff784b969 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#8  0x00007ffff78488f3 in g_application_register ()
   from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#9  0x00007ffff784918f in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#10 0x00007ffff78494f2 in g_application_run ()
   from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#11 0x0000000000400cfa in main ()

nautilus:
(gdb) bt
#0  0x00007ffff34c9833 in __select_nocancel ()
    at ../sysdeps/unix/syscall-template.S:84
#1  0x00007ffff418ecd1 in g_spawn_sync ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007ffff418f313 in g_spawn_command_line_sync ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007ffff4729b70 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007ffff472b5f2 in g_dbus_address_get_for_bus_sync ()
   from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#5  0x00007ffff47367ee in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#6  0x00007ffff473c22b in g_bus_get_sync ()
   from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#7  0x00007ffff4712969 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#8  0x00007ffff470f8f3 in g_application_register ()
   from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#9  0x000000000042c78e in ?? ()
#10 0x00007fffedd29e40 in ffi_call_unix64 ()
   from /usr/lib/x86_64-linux-gnu/libffi.so.6
#11 0x00007fffedd298ab in ffi_call ()
   from /usr/lib/x86_64-linux-gnu/libffi.so.6
#12 0x00007ffff441fcf5 in g_cclosure_marshal_generic_va ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007ffff441f1d4 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#14 0x00007ffff44394b8 in g_signal_emit_valist ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#15 0x00007ffff443a08f in g_signal_emit ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#16 0x00007ffff4710168 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#17 0x00007ffff47104f2 in g_application_run ()
   from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#18 0x000000000042ba31 in ?? ()
#19 0x00007ffff33ed7e0 in __libc_start_main (main=0x42b970, argc=1, 
    argv=0x7fffffffe5b8, init=<optimised out>, fini=<optimised out>, 
    rtld_fini=<optimised out>, stack_end=0x7fffffffe5a8)
    at ../csu/libc-start.c:291
#20 0x000000000042ba99 in ?? ()

/usr/games/sol:
(gdb) bt
#0  0x00007ffff537556d in read () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007ffff0fdacf8 in _dbus_read ()
   from /lib/x86_64-linux-gnu/libdbus-1.so.3
#2  0x00007ffff0fde349 in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
#3  0x00007ffff0fd2c95 in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
#4  0x00007ffff0fd2b3a in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
#5  0x00007ffff0fbd32f in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
#6  0x00007ffff0fb8e08 in ?? () from /lib/x86_64-linux-gnu/libdbus-1.so.3
#7  0x00007fffedc925f6 in atspi_get_a11y_bus ()
   from /usr/lib/x86_64-linux-gnu/libatspi.so.0
#8  0x00007ffff39e9052 in atk_bridge_adaptor_init ()
   from /usr/lib/x86_64-linux-gnu/libatk-bridge-2.0.so.0
#9  0x00007ffff7117134 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#10 0x00007ffff5f3dfa5 in g_closure_invoke ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#11 0x00007ffff5f4ffc1 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#12 0x00007ffff5f58d5c in g_signal_emit_valist ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#13 0x00007ffff5f5908f in g_signal_emit ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#14 0x00007ffff5f424d4 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#15 0x00007ffff5f44961 in g_object_notify ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#16 0x00007ffff6de5778 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#17 0x00007ffff5f3e1d4 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#18 0x00007ffff5f589a6 in g_signal_emit_valist ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#19 0x00007ffff5f59555 in g_signal_emit_by_name ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
#20 0x00007ffff6e0b6c5 in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#21 0x00007ffff6de5646 in gdk_display_manager_open_display ()
   from /usr/lib/x86_64-linux-gnu/libgdk-3.so.0
#22 0x00007ffff72a2266 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-3.so.0
#23 0x00007ffff5c71fc8 in g_option_context_parse ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x000055555556c1d6 in ?? ()
#25 0x00007ffff55fbc5d in ?? ()
   from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#26 0x00007ffff55d458a in ?? ()
   from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#27 0x00007ffff5671d33 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#28 0x00007ffff55de283 in scm_call_4 ()
   from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#29 0x00007ffff55d4d21 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#30 0x00007ffff55d4e05 in scm_c_with_continuation_barrier ()
   from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#31 0x00007ffff5654bbc in ?? ()
   from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#32 0x00007fffeeccc952 in GC_call_with_stack_base ()
   from /usr/lib/x86_64-linux-gnu/libgc.so.1
#33 0x00007ffff5654fe8 in scm_with_guile ()
   from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#34 0x00007ffff55fbe35 in scm_boot_guile ()
   from /usr/lib/x86_64-linux-gnu/libguile-2.0.so.22
#35 0x0000555555560861 in ?? ()
#36 0x00007ffff4fbc7e0 in __libc_start_main (main=0x5555555607d0, argc=1, 
    argv=0x7fffffffe5b8, init=<optimised out>, fini=<optimised out>, 
    rtld_fini=<optimised out>, stack_end=0x7fffffffe5a8)
    at ../csu/libc-start.c:291
#37 0x00005555555608c9 in ?? ()


** Changed in: dbus (Ubuntu)
   Importance: Low => Medium

** Changed in: gtk+3.0 (Ubuntu)
   Importance: Low => Medium

** Also affects: canonical-devices-system-image
   Importance: Undecided
       Status: New

** Tags added: unity8-desktop

** Tags added: xmir

-- 
You received this bug notification because you are a member of Ubuntu
Desktop Bugs, which is subscribed to gtk+3.0 in Ubuntu.
https://bugs.launchpad.net/bugs/1604704

Title:
  [regression] GTK apps hang for a long time on start-up under Xmir (and
  less under native Mir) failing to find dbus

To manage notifications about this bug go to:
https://bugs.launchpad.net/canonical-devices-system-image/+bug/1604704/+subscriptions

-- 
desktop-bugs mailing list
desktop-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/desktop-bugs

Reply via email to