Hi Mark,
your suggestion does not work.
Because a separate colord-sane will exit very fast, and triggering
with connecting device will probably start another colord-sane process.
But I have searched a little with AI in google:
replaced colord-sane with a bash script with owner root.
renamed the original colord-sane binary to colord-sane.orig
this is the bash script colord-sane:
#!/bin/bash
exec gdb -batch -ex "run" -ex "bt" /usr/libexec/colord-sane.orig >
/tmp/colord_debug.log 2>&1
and now this is the logfile colord_debug.log:
gdb: warning: Couldn't determine a path for the index cache directory.
[Thread debugging using libthread_db enabled]
Using host libthread_db library
"/usr/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7ffff73b76c0 (LWP 7464)]
[New Thread 0x7ffff6bb66c0 (LWP 7465)]
[New Thread 0x7ffff63b56c0 (LWP 7466)]
[New Thread 0x7ffff5bb46c0 (LWP 7467)]
[New Thread 0x7ffff52e26c0 (LWP 7468)]
[New Thread 0x7fffe55916c0 (LWP 7469)]
[New Thread 0x7fffe4d286c0 (LWP 7470)]
[New Thread 0x7fffdb5ff6c0 (LWP 7471)]
[Detaching after vfork from child process 7472]
[Detaching after vfork from child process 7474]
[Thread 0x7fffdb5ff6c0 (LWP 7471) exited]
Thread 1 "colord-sane.ori" received signal SIGSEGV, Segmentation fault.
0x00007ffff7b6ad59 in ?? () from /usr/lib/x86_64-linux-gnu/libc.so.6
#0 0x00007ffff7b6ad59 in ??? () at /usr/lib/x86_64-linux-gnu/libc.so.6
#1 0x00007fffe420d95b in sane_epsonscan2_get_devices () at
/usr/lib/x86_64-linux-gnu/sane/libsane-epsonscan2.so.1
#2 0x00007ffff7d22e82 in sane_dll_get_devices () at
/usr/lib/x86_64-linux-gnu/libsane.so.1
#3 0x0000555555556878 in cd_sane_client_refresh (priv=0x5555555645c0)
at ../contrib/colord-sane/cd-main.c:206
#4 cd_sane_populate_existing_devices_cb (source_object=<optimized out>,
res=<optimized out>, user_data=0x5555555645c0) at
../contrib/colord-sane/cd-main.c:282
#5 0x00007ffff78c2c03 in ??? () at
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#6 0x00007ffff78c38c0 in ??? () at
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#7 0x00007ffff7f62aa9 in ??? () at /usr/lib/x86_64-linux-gnu/libcolord.so.2
#8 0x00007ffff78c2c03 in ??? () at
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#9 0x00007ffff78c38c0 in ??? () at
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#10 0x00007ffff7931ad7 in ??? () at
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#11 0x00007ffff78c2c03 in ??? () at
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#12 0x00007ffff78c38c0 in ??? () at
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#13 0x00007ffff79245b2 in ??? () at
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#14 0x00007ffff78c2c03 in ??? () at
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#15 0x00007ffff78c2c42 in ??? () at
/usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#16 0x00007ffff7d936ae in ??? () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#17 0x00007ffff7d96a4f in ??? () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007ffff7d974cf in g_main_loop_run () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x000055555555635f in main (argc=<optimized out>,
argv=0x7fffffffed48) at ../contrib/colord-sane/cd-main.c:332
best regards
Reiner
Am 20.01.26 um 09:27 schrieb Mark Hindley:
> Reiner,
>
> Apologies,
>
> On Mon, Jan 19, 2026 at 03:13:27PM +0100, Reiner wrote:
>> sudo gdb /usr/libexec/colord-sane
>> GNU gdb (Debian 17.1-1) 17.1
>> Copyright (C) 2025 Free Software Foundation, Inc.
>> License GPLv3+: GNU GPL version 3 or later
>> <http://gnu.org/licenses/gpl.html>
>> This is free software: you are free to change and redistribute it.
>> There is NO WARRANTY, to the extent permitted by law.
>> Type "show copying" and "show warranty" for details.
>> This GDB was configured as "x86_64-linux-gnu".
>> Type "show configuration" for configuration details.
>> For bug reporting instructions, please see:
>> <https://www.gnu.org/software/gdb/bugs/>.
>> Find the GDB manual and other documentation resources online at:
>> <http://www.gnu.org/software/gdb/documentation/>.
>>
>> For help, type "help".
>> Type "apropos word" to search for commands related to "word"...
>> Reading symbols from /usr/libexec/colord-sane...
>> Reading symbols from
>> /usr/lib/debug/.build-id/e3/9900f1973b9caa55e3c7b876fc84282d7f52c6.debug...
> at this point, the first gdb command should be 'run'
>
> Then (hopefully) the sigsegv will be captured, you will drop back to the gdb
> prompt and be able to get a backtrace.
>
> Mark