On Debian Sid/unstable with colord 0.1.21-1 installed the daemon segfaults with the backtrace pasted below [1]. [1] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=675852 Starting program: /usr/lib/x86_64-linux-gnu/colord/colord [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". [New Thread 0x7ffff4f46700 (LWP 6176)] [New Thread 0x7ffff4745700 (LWP 6177)] [Thread 0x7ffff4f46700 (LWP 6176) exited] [New Thread 0x7ffff4f46700 (LWP 6329)] Program received signal SIGSEGV, Segmentation fault. cd_device_register_object (device=0x69b1b0, connection=0x670020, info=0x669650, error=0x7fffffffe328) at cd-device.c:1474 1474 g_set_error (error, #0 cd_device_register_object (device=0x69b1b0, connection=0x670020, info=0x669650, error=0x7fffffffe328) at cd-device.c:1474 #1 0x000000000041738c in cd_main_device_register_on_bus (device=0x69b1b0, error=0x7fffffffe328) at cd-main.c:399 #2 0x000000000041869f in cd_main_daemon_method_call (connection_=0x670020, sender=0x7fffec004b30 ":1.158", object_path=0x7fffec006d10 "/org/freedesktop/ColorManager", interface_name=0x7fffec007820 "org.freedesktop.ColorManager", method_name=0x7fffec006ed0 "CreateDevice", parameters=0x7fffec016b20, invocation=invocation@entry=0x6a4c60, user_data=user_data@entry=0x0) at cd-main.c:1032 #3 0x00007ffff7027915 in call_in_idle_cb (user_data=0x6a4c60) at /tmp/buildd/glib2.0-2.32.3/./gio/gdbusconnection.c:4687 #4 0x00007ffff6660205 in g_main_dispatch (context=0x636de0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:2539 #5 g_main_context_dispatch (context=context@entry=0x636de0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3075 #6 0x00007ffff6660538 in g_main_context_iterate (context=0x636de0, block=block@entry=1, dispatch=dispatch@entry=1, self=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3146 #7 0x00007ffff6660932 in g_main_loop_run (loop=0x6368b0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3340 #8 0x000000000041a25a in main (argc=1, argv=0x7fffffffe6c8) at cd-main.c:1964 #0 cd_device_register_object (device=0x69b1b0, connection=0x670020, info=0x669650, error=0x7fffffffe328) at cd-device.c:1474 error_local = 0x0 ret = 0 interface_vtable = {method_call = 0x40b1a9 <cd_device_dbus_method_call>, get_property = 0x40bde9 <cd_device_dbus_get_property>, set_property = 0, padding = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}} #1 0x000000000041738c in cd_main_device_register_on_bus (device=0x69b1b0, error=0x7fffffffe328) at cd-main.c:399 ret = 0 #2 0x000000000041869f in cd_main_daemon_method_call (connection_=0x670020, sender=0x7fffec004b30 ":1.158", object_path=0x7fffec006d10 "/org/freedesktop/ColorManager", interface_name=0x7fffec007820 "org.freedesktop.ColorManager", method_name=0x7fffec006ed0 "CreateDevice", parameters=0x7fffec016b20, invocation=invocation@entry=0x6a4c60, user_data=user_data@entry=0x0) at cd-main.c:1032 device = 0x69b1b0 scope = CD_OBJECT_SCOPE_TEMP profile = 0x0 prop_key = 0x6c28c0 "Kind" prop_value = 0x6c28c5 "display" register_on_bus = 1 ret = 1 device_id = 0x6c2840 "xrandr-Lenovo Group Limited" scope_tmp = 0x6c285c "temp" error = 0x0 array = 0x0 iter = 0x635140 tuple = 0x0 value = 0x0 fd = -1 uid = 108 fd_handle = 0 metadata_key = 0x0 metadata_value = 0x0 message = 0x10 fd_list = 0x6a4c60 #3 0x00007ffff7027915 in call_in_idle_cb (user_data=0x6a4c60) at /tmp/buildd/glib2.0-2.32.3/./gio/gdbusconnection.c:4687 invocation = 0x6a4c60 vtable = <optimized out> registration_id = <optimized out> subtree_registration_id = <optimized out> __PRETTY_FUNCTION__ = "call_in_idle_cb" #4 0x00007ffff6660205 in g_main_dispatch (context=0x636de0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:2539 dispatch = 0x7ffff665df20 <g_idle_dispatch> was_in_call = 0 user_data = 0x6a4c60 callback = 0x7ffff7027810 <call_in_idle_cb> cb_funcs = 0x7ffff690b980 cb_data = 0x7fffec007890 current_source_link = {data = 0x7fffec006c40, next = 0x0} need_destroy = <optimized out> source = 0x7fffec006c40 current = 0x630a70 i = <optimized out> #5 g_main_context_dispatch (context=context@entry=0x636de0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3075 No locals. #6 0x00007ffff6660538 in g_main_context_iterate (context=0x636de0, block=block@entry=1, dispatch=dispatch@entry=1, self=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3146 max_priority = 2147483647 timeout = -1 some_ready = 1 nfds = <optimized out> allocated_nfds = <optimized out> fds = 0x68ca10 #7 0x00007ffff6660932 in g_main_loop_run (loop=0x6368b0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3340 __PRETTY_FUNCTION__ = "g_main_loop_run" #8 0x000000000041a25a in main (argc=1, argv=0x7fffffffe6c8) at cd-main.c:1964 context = 0x6332e0 error = 0x0 immediate_exit = 0 ret = 1 timed_exit = 0 owner_id = 1 retval = 1 options = {{long_name = 0x4205d9 "timed-exit", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x7fffffffe530, description = 0x4205e4 "Exit after a small delay", arg_description = 0x0}, {long_name = 0x4205fd "immediate-exit", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x7fffffffe52c, description = 0x420610 "Exit after the engine has loaded", arg_description = 0x0}, {long_name = 0x0, short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x0, description = 0x0, arg_description = 0x0}} Thread 4 (Thread 0x7ffff4f46700 (LWP 6329)): #0 clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:84 #1 0x00007ffff6400a80 in ?? () at pthread_create.c:217 from /lib/x86_64-linux-gnu/libpthread.so.0 #2 0x00007ffff4f46700 in ?? () #3 0x0000000000000000 in ?? () Thread 3 (Thread 0x7ffff4745700 (LWP 6177)): #0 0x00007ffff6140a93 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87 #1 0x00007ffff66604d4 in g_main_context_poll (n_fds=3, fds=0x684a90, timeout=-1, context=0x683010, priority=<optimized out>) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3440 #2 g_main_context_iterate (context=0x683010, block=block@entry=1, dispatch=dispatch@entry=1, self=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3141 #3 0x00007ffff6660932 in g_main_loop_run (loop=0x6849e0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3340 #4 0x00007ffff70367f6 in gdbus_shared_thread_func (user_data=0x682fe0) at /tmp/buildd/glib2.0-2.32.3/./gio/gdbusprivate.c:277 #5 0x00007ffff6682df5 in g_thread_proxy (data=0x67cf70) at /tmp/buildd/glib2.0-2.32.3/./glib/gthread.c:801 #6 0x00007ffff6400b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #7 0x00007ffff614b6dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #8 0x0000000000000000 in ?? () Thread 1 (Thread 0x7ffff7fd17a0 (LWP 6173)): #0 cd_device_register_object (device=0x69b1b0, connection=0x670020, info=0x669650, error=0x7fffffffe328) at cd-device.c:1474 #1 0x000000000041738c in cd_main_device_register_on_bus (device=0x69b1b0, error=0x7fffffffe328) at cd-main.c:399 #2 0x000000000041869f in cd_main_daemon_method_call (connection_=0x670020, sender=0x7fffec004b30 ":1.158", object_path=0x7fffec006d10 "/org/freedesktop/ColorManager", interface_name=0x7fffec007820 "org.freedesktop.ColorManager", method_name=0x7fffec006ed0 "CreateDevice", parameters=0x7fffec016b20, invocation=invocation@entry=0x6a4c60, user_data=user_data@entry=0x0) at cd-main.c:1032 #3 0x00007ffff7027915 in call_in_idle_cb (user_data=0x6a4c60) at /tmp/buildd/glib2.0-2.32.3/./gio/gdbusconnection.c:4687 #4 0x00007ffff6660205 in g_main_dispatch (context=0x636de0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:2539 #5 g_main_context_dispatch (context=context@entry=0x636de0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3075 #6 0x00007ffff6660538 in g_main_context_iterate (context=0x636de0, block=block@entry=1, dispatch=dispatch@entry=1, self=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3146 #7 0x00007ffff6660932 in g_main_loop_run (loop=0x6368b0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3340 #8 0x000000000041a25a in main (argc=1, argv=0x7fffffffe6c8) at cd-main.c:1964 Thread 4 (Thread 0x7ffff4f46700 (LWP 6329)): #0 clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:84 No locals. #1 0x00007ffff6400a80 in ?? () at pthread_create.c:217 from /lib/x86_64-linux-gnu/libpthread.so.0 No symbol table info available. #2 0x00007ffff4f46700 in ?? () No symbol table info available. #3 0x0000000000000000 in ?? () No symbol table info available. Thread 3 (Thread 0x7ffff4745700 (LWP 6177)): #0 0x00007ffff6140a93 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87 _a3 = -1 _a1 = 6834832 resultvar = <optimized out> _a2 = 3 oldtype = 0 result = <optimized out> #1 0x00007ffff66604d4 in g_main_context_poll (n_fds=3, fds=0x684a90, timeout=-1, context=0x683010, priority=<optimized out>) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3440 poll_func = 0x7ffff666e2c0 <g_poll> #2 g_main_context_iterate (context=0x683010, block=block@entry=1, dispatch=dispatch@entry=1, self=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3141 max_priority = 2147483647 timeout = -1 some_ready = <optimized out> nfds = 3 allocated_nfds = <optimized out> fds = 0x684a90 #3 0x00007ffff6660932 in g_main_loop_run (loop=0x6849e0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3340 __PRETTY_FUNCTION__ = "g_main_loop_run" #4 0x00007ffff70367f6 in gdbus_shared_thread_func (user_data=0x682fe0) at /tmp/buildd/glib2.0-2.32.3/./gio/gdbusprivate.c:277 data = 0x682fe0 #5 0x00007ffff6682df5 in g_thread_proxy (data=0x67cf70) at /tmp/buildd/glib2.0-2.32.3/./glib/gthread.c:801 thread = 0x67cf70 #6 0x00007ffff6400b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 __res = <optimized out> pd = 0x7ffff4745700 unwind_buf = {cancel_jmp_buf = {{jmp_buf = {140737294653184, 1666908197141687922, 140737303043088, 140737294653888, 140737354125376, 3, -1666924752575320462, -1666929256007127438}, mask_was_saved = 0}}, priv = {pad = {0x0, 0x0, 0x0, 0x0}, data = {prev = 0x0, cleanup = 0x0, canceltype = 0}}} not_first_call = <optimized out> freesize = <optimized out> __PRETTY_FUNCTION__ = "start_thread" #7 0x00007ffff614b6dd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 No locals. #8 0x0000000000000000 in ?? () No symbol table info available. Thread 1 (Thread 0x7ffff7fd17a0 (LWP 6173)): #0 cd_device_register_object (device=0x69b1b0, connection=0x670020, info=0x669650, error=0x7fffffffe328) at cd-device.c:1474 error_local = 0x0 ret = 0 interface_vtable = {method_call = 0x40b1a9 <cd_device_dbus_method_call>, get_property = 0x40bde9 <cd_device_dbus_get_property>, set_property = 0, padding = {0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}} #1 0x000000000041738c in cd_main_device_register_on_bus (device=0x69b1b0, error=0x7fffffffe328) at cd-main.c:399 ret = 0 #2 0x000000000041869f in cd_main_daemon_method_call (connection_=0x670020, sender=0x7fffec004b30 ":1.158", object_path=0x7fffec006d10 "/org/freedesktop/ColorManager", interface_name=0x7fffec007820 "org.freedesktop.ColorManager", method_name=0x7fffec006ed0 "CreateDevice", parameters=0x7fffec016b20, invocation=invocation@entry=0x6a4c60, user_data=user_data@entry=0x0) at cd-main.c:1032 device = 0x69b1b0 scope = CD_OBJECT_SCOPE_TEMP profile = 0x0 prop_key = 0x6c28c0 "Kind" prop_value = 0x6c28c5 "display" register_on_bus = 1 ret = 1 device_id = 0x6c2840 "xrandr-Lenovo Group Limited" scope_tmp = 0x6c285c "temp" error = 0x0 array = 0x0 iter = 0x635140 tuple = 0x0 value = 0x0 fd = -1 uid = 108 fd_handle = 0 metadata_key = 0x0 metadata_value = 0x0 message = 0x10 fd_list = 0x6a4c60 #3 0x00007ffff7027915 in call_in_idle_cb (user_data=0x6a4c60) at /tmp/buildd/glib2.0-2.32.3/./gio/gdbusconnection.c:4687 invocation = 0x6a4c60 vtable = <optimized out> registration_id = <optimized out> subtree_registration_id = <optimized out> __PRETTY_FUNCTION__ = "call_in_idle_cb" #4 0x00007ffff6660205 in g_main_dispatch (context=0x636de0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:2539 dispatch = 0x7ffff665df20 <g_idle_dispatch> was_in_call = 0 user_data = 0x6a4c60 callback = 0x7ffff7027810 <call_in_idle_cb> cb_funcs = 0x7ffff690b980 cb_data = 0x7fffec007890 current_source_link = {data = 0x7fffec006c40, next = 0x0} need_destroy = <optimized out> source = 0x7fffec006c40 current = 0x630a70 i = <optimized out> #5 g_main_context_dispatch (context=context@entry=0x636de0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3075 No locals. #6 0x00007ffff6660538 in g_main_context_iterate (context=0x636de0, block=block@entry=1, dispatch=dispatch@entry=1, self=<error reading variable: Unhandled dwarf expression opcode 0xfa>) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3146 max_priority = 2147483647 timeout = -1 some_ready = 1 nfds = <optimized out> allocated_nfds = <optimized out> fds = 0x68ca10 #7 0x00007ffff6660932 in g_main_loop_run (loop=0x6368b0) at /tmp/buildd/glib2.0-2.32.3/./glib/gmain.c:3340 __PRETTY_FUNCTION__ = "g_main_loop_run" #8 0x000000000041a25a in main (argc=1, argv=0x7fffffffe6c8) at cd-main.c:1964 context = 0x6332e0 error = 0x0 immediate_exit = 0 ret = 1 timed_exit = 0 owner_id = 1 retval = 1 options = {{long_name = 0x4205d9 "timed-exit", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x7fffffffe530, description = 0x4205e4 "Exit after a small delay", arg_description = 0x0}, {long_name = 0x4205fd "immediate-exit", short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x7fffffffe52c, description = 0x420610 "Exit after the engine has loaded", arg_description = 0x0}, {long_name = 0x0, short_name = 0 '\000', flags = 0, arg = G_OPTION_ARG_NONE, arg_data = 0x0, description = 0x0, arg_description = 0x0}}
It looks like g_dbus_connection_register_object() is returning 0 and not setting a GError... Do you have any critical warnings on the console when you run /usr/libexec/colord manually?
(In reply to comment #1) > It looks like g_dbus_connection_register_object() is returning 0 and not > setting a GError... Do you have any critical warnings on the console when you > run /usr/libexec/colord manually? I cannot see any critical messages when running it manually. $ LANG=C sudo /usr/lib/i386-linux-gnu/colord/colord -v 14:18:26 Verbose debugging enabled (on console 1) 14:18:26 CdMappingDb: trying to open database '/var/lib/colord/mapping.db' 14:18:26 CdDeviceDb: trying to open database '/var/lib/colord/storage.db' 14:18:26 CdMain: acquired name: org.freedesktop.ColorManager 14:18:26 new profile (/usr/share/color/icc/pigment/CMY.icm) has no DICT tag 14:18:26 /usr/share/color/icc/pigment/CMY.icm has no profile-id nor FILE_checksum, falling back to slow MD5 14:18:26 CdProfileStore: parsed new profile '/usr/share/color/icc/pigment/CMY.icm' 14:18:26 CdProfileStore: emit added (and changed): /usr/share/color/icc/pigment/CMY.icm 14:18:27 CdMain: Adding profile /org/freedesktop/ColorManager/profiles/icc_781f6f71344167d3526631689139f109 14:18:27 CdMain: Emitting ProfileAdded(/org/freedesktop/ColorManager/profiles/icc_781f6f71344167d3526631689139f109) 14:18:27 new profile (/usr/share/color/icc/pigment/fogra27l.icm) has no DICT tag 14:18:27 /usr/share/color/icc/pigment/fogra27l.icm has no profile-id nor FILE_checksum, falling back to slow MD5 14:18:27 CdProfileStore: parsed new profile '/usr/share/color/icc/pigment/fogra27l.icm' 14:18:27 CdProfileStore: emit added (and changed): /usr/share/color/icc/pigment/fogra27l.icm 14:18:27 CdMain: Adding profile /org/freedesktop/ColorManager/profiles/icc_e729b445abc89051fe8ba7c6d8e9b127 14:18:27 CdMain: Emitting ProfileAdded(/org/freedesktop/ColorManager/profiles/icc_e729b445abc89051fe8ba7c6d8e9b127) 14:18:27 Adding metadata CMF_version=0.1.20 14:18:27 Adding metadata CMF_binary=../client/cd-create-profile 14:18:27 Adding metadata CMF_product=colord 14:18:27 CdProfileStore: parsed new profile '/usr/share/color/icc/colord/crayons.icc' 14:18:27 CdProfileStore: emit added (and changed): /usr/share/color/icc/colord/crayons.icc 14:18:27 CdMain: Adding profile /org/freedesktop/ColorManager/profiles/icc_0f39f5fa24e4d40877f5e3041a8ce646 14:18:27 CdMain: Emitting ProfileAdded(/org/freedesktop/ColorManager/profiles/icc_0f39f5fa24e4d40877f5e3041a8ce646) 14:18:27 Adding metadata CMF_version=0.1.20 14:18:27 Adding metadata CMF_binary=../client/cd-create-profile 14:18:27 Adding metadata CMF_product=colord 14:18:27 CdProfileStore: parsed new profile '/usr/share/color/icc/colord/x11-colors.icc' 14:18:27 CdProfileStore: emit added (and changed): /usr/share/color/icc/colord/x11-colors.icc 14:18:27 CdMain: Adding profile /org/freedesktop/ColorManager/profiles/icc_bb61e89d71848368bd09d855b5ce4478 14:18:27 CdMain: Emitting ProfileAdded(/org/freedesktop/ColorManager/profiles/icc_bb61e89d71848368bd09d855b5ce4478) 14:18:27 CdProfileStore: failed to open: Error opening directory '/usr/local/share/color/icc': No such file or directory 14:18:27 CdProfileStore: failed to open: Error opening directory '/Library/ColorSync/Profiles/Displays': No such file or directory 14:18:27 CdProfileStore: failed to open: Error opening directory '/var/lib/colord/icc': No such file or directory 14:18:27 CdProfileStore: failed to open: Error opening directory '/var/lib/color/icc': No such file or directory 14:18:27 CdDeviceDb: get devices 14:18:27 failed to find profile /usr/share/color/icc/Argyll/ClayRGB1998.icm for override 14:18:27 failed to find profile /usr/share/color/icc/Argyll/sRGB.icm for override 14:18:27 failed to find profile /usr/share/color/icc/Argyll/ProPhotoRGB.icc for override But I do not know if the culprit event is triggered here.
We have the same on Ubuntu bugtracker. In moment 80 people have registered for beeing affected. https://bugs.launchpad.net/ubuntu/+source/colord/+bug/1021374 Veresions, stacktraces and others can be found there.
commit 84d606747142fe449f4fc410802ee41e6e213929 Author: Christopher James Halse Rogers <raof@ubuntu.com> Date: Thu Sep 13 13:33:27 2012 +1000 Append usernames to dbus object paths before sanitising the object path. Usernames can contain characters not valid in a dbus object path, like ‘-’. It just so happens that this case exposes a bug in the GDBus documentation - g_dbus_connection_register_object will helpfully return 0 without setting error, resulting in a crash. Fixes https://bugs.freedesktop.org/show_bug.cgi?id=51031
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.