I found x11/mate/caja to be unreliable at starting. It has a
segmentation fault 9 times of 10 in 7.0 while (reported by someone
who tried) it works reliably on 6.9. I get the crash on two 7.0 machines.

I tried to run it from fvwm or cwm and same issue happen.  I compiled
it with debugs symbols and got the backtrace of each thread upon crash.

It seems when started from mate-session it doesn't crash and once
it's run, the new processes must reuse the current process and then
won't ever crash.

Reading symbols from caja...Reading symbols from 
/usr/local/bin/.debug/caja.dbg...done.
done.
(gdb) run
Starting program: /usr/local/bin/caja 
[New process 60788]
[New thread 150505]
[New thread 571791]
[New thread 576065]
[New thread 233739]
[New thread 177670]
[New thread 535484]

Thread 1 received signal SIGSEGV, Segmentation fault.
strcmp () at /usr/src/lib/libc/arch/amd64/string/strcmp.S:59
59              movb    (%rdi),%al
(gdb) bt
#0  strcmp () at /usr/src/lib/libc/arch/amd64/string/strcmp.S:59
#1  0x000000057873bd0e in caja_application_open (app=<optimized out>, 
files=0x85750f6a0, n_files=1, options=<optimized out>) at caja-application.c:379
#2  0x00000007e69b6a24 in _g_cclosure_marshal_VOID__POINTER_INT_STRINGv () from 
/usr/local/lib/libgio-2.0.so.4200.13
#3  0x00000008033f409f in _g_closure_invoke_va () from 
/usr/local/lib/libgobject-2.0.so.4200.13
#4  0x000000080340d3ea in g_signal_emit_valist () from 
/usr/local/lib/libgobject-2.0.so.4200.13
#5  0x000000080340ddc1 in g_signal_emit () from 
/usr/local/lib/libgobject-2.0.so.4200.13
#6  0x000000057873c7e5 in caja_application_local_command_line 
(application=<optimized out>, arguments=<optimized out>, exit_status=<optimized 
out>)
    at caja-application.c:2079
#7  0x00000007e6a2218c in g_application_run () from 
/usr/local/lib/libgio-2.0.so.4200.13
#8  0x0000000578752beb in main (argc=1, argv=0x7f7ffffd13e8) at caja-main.c:271
(gdb) thread 2
[Switching to thread 2 (thread 386342)]
#0  futex () at /tmp/-:3
3       /tmp/-: No such file or directory.
(gdb) bt
#0  futex () at /tmp/-:3
#1  0x00000007ddad6d45 in _twait (p=0x872768410, val=3, clockid=3, abs=0x0) at 
/usr/src/lib/libc/thread/synch.h:36
#2  _rthread_cond_timedwait (cond=0x872768410, mutexp=0x87371fa90, abs=0x0) at 
/usr/src/lib/libc/thread/rthread_cond.c:106
#3  0x0000000821d062f2 in g_cond_wait () from 
/usr/local/lib/libglib-2.0.so.4201.6
#4  0x0000000821c6b6c5 in g_async_queue_pop_intern_unlocked () from 
/usr/local/lib/libglib-2.0.so.4201.6
#5  0x0000000821cd7b38 in g_thread_pool_spawn_thread () from 
/usr/local/lib/libglib-2.0.so.4201.6
#6  0x0000000821cd7425 in g_thread_proxy () from 
/usr/local/lib/libglib-2.0.so.4201.6
#7  0x000000079e766f01 in _rthread_start (v=<error reading variable: Unhandled 
dwarf expression opcode 0xa3>) at /usr/src/lib/librthread/rthread.c:96
#8  0x00000007ddaf95fa in __tfork_thread () at 
/usr/src/lib/libc/arch/amd64/sys/tfork_thread.S:84
(gdb) thread 3
[Switching to thread 3 (thread 150505)]
#0  _thread_sys_poll () at /tmp/-:3
3       /tmp/-: No such file or directory.
(gdb) bt
#0  _thread_sys_poll () at /tmp/-:3
#1  0x00000007ddb0237e in _libc_poll_cancel (fds=0x82db2b030, nfds=2, 
timeout=7093) at /usr/src/lib/libc/sys/w_poll.c:27
#2  0x0000000821ca6d32 in g_main_context_iterate () from 
/usr/local/lib/libglib-2.0.so.4201.6
#3  0x0000000821ca6e65 in g_main_context_iteration () from 
/usr/local/lib/libglib-2.0.so.4201.6
#4  0x0000000821ca91a1 in glib_worker_main () from 
/usr/local/lib/libglib-2.0.so.4201.6
#5  0x0000000821cd7425 in g_thread_proxy () from 
/usr/local/lib/libglib-2.0.so.4201.6
#6  0x000000079e766f01 in _rthread_start (v=<error reading variable: Unhandled 
dwarf expression opcode 0xa3>) at /usr/src/lib/librthread/rthread.c:96
#7  0x00000007ddaf95fa in __tfork_thread () at 
/usr/src/lib/libc/arch/amd64/sys/tfork_thread.S:84
(gdb) thread 4
[Switching to thread 4 (thread 571791)]
#0  _thread_sys_poll () at /tmp/-:3
3       in /tmp/-
(gdb) bt
#0  _thread_sys_poll () at /tmp/-:3
#1  0x00000007ddb0237e in _libc_poll_cancel (fds=0x854e8c6a0, nfds=2, 
timeout=-1) at /usr/src/lib/libc/sys/w_poll.c:27
#2  0x0000000821ca6d32 in g_main_context_iterate () from 
/usr/local/lib/libglib-2.0.so.4201.6
#3  0x0000000821ca71aa in g_main_loop_run () from 
/usr/local/lib/libglib-2.0.so.4201.6
#4  0x00000007e6a6eb48 in gdbus_shared_thread_func () from 
/usr/local/lib/libgio-2.0.so.4200.13
#5  0x0000000821cd7425 in g_thread_proxy () from 
/usr/local/lib/libglib-2.0.so.4201.6
#6  0x000000079e766f01 in _rthread_start (v=<error reading variable: Unhandled 
dwarf expression opcode 0xa3>) at /usr/src/lib/librthread/rthread.c:96
#7  0x00000007ddaf95fa in __tfork_thread () at 
/usr/src/lib/libc/arch/amd64/sys/tfork_thread.S:84
(gdb) thread 5
[Switching to thread 5 (thread 576065)]
#0  stat () at /tmp/-:3
3       /tmp/-: No such file or directory.
(gdb) bt
#0  stat () at /tmp/-:3
#1  0x0000000821c8dbcd in g_file_test () from 
/usr/local/lib/libglib-2.0.so.4201.6
#2  0x00000007e6a8c1e1 in get_thumbnail_attributes () from 
/usr/local/lib/libgio-2.0.so.4200.13
#3  0x00000007e6a8b908 in _g_local_file_info_get () from 
/usr/local/lib/libgio-2.0.so.4200.13
#4  0x00000007e6a878a6 in g_local_file_query_info () from 
/usr/local/lib/libgio-2.0.so.4200.13
#5  0x00000007e6995466 in query_info_async_thread () from 
/usr/local/lib/libgio-2.0.so.4200.13
#6  0x00000007e69eff2e in g_task_thread_pool_thread () from 
/usr/local/lib/libgio-2.0.so.4200.13
#7  0x0000000821cd8939 in g_thread_pool_thread_proxy () from 
/usr/local/lib/libglib-2.0.so.4201.6
#8  0x0000000821cd7425 in g_thread_proxy () from 
/usr/local/lib/libglib-2.0.so.4201.6
#9  0x000000079e766f01 in _rthread_start (v=<error reading variable: Unhandled 
dwarf expression opcode 0xa3>) at /usr/src/lib/librthread/rthread.c:96
#10 0x00000007ddaf95fa in __tfork_thread () at 
/usr/src/lib/libc/arch/amd64/sys/tfork_thread.S:84
(gdb) thread 6
[Switching to thread 6 (thread 233739)]
#0  _thread_sys_poll () at /tmp/-:3
3       /tmp/-: No such file or directory.
(gdb) bt
#0  _thread_sys_poll () at /tmp/-:3
#1  0x00000007ddb0237e in _libc_poll_cancel (fds=0x85da8a4c0, nfds=1, 
timeout=-1) at /usr/src/lib/libc/sys/w_poll.c:27
#2  0x0000000821ca6d32 in g_main_context_iterate () from 
/usr/local/lib/libglib-2.0.so.4201.6
#3  0x0000000821ca6e65 in g_main_context_iteration () from 
/usr/local/lib/libglib-2.0.so.4201.6
#4  0x000000082362e9dd in dconf_gdbus_worker_thread () from 
/usr/local/lib/gio/modules/libdconfsettings.so
#5  0x0000000821cd7425 in g_thread_proxy () from 
/usr/local/lib/libglib-2.0.so.4201.6
#6  0x000000079e766f01 in _rthread_start (v=<error reading variable: Unhandled 
dwarf expression opcode 0xa3>) at /usr/src/lib/librthread/rthread.c:96
#7  0x00000007ddaf95fa in __tfork_thread () at 
/usr/src/lib/libc/arch/amd64/sys/tfork_thread.S:84
(gdb) thread 7
[Switching to thread 7 (thread 177670)]
#0  futex () at /tmp/-:3
3       /tmp/-: No such file or directory.
(gdb) bt
#0  futex () at /tmp/-:3
#1  0x00000007ddad6d45 in _twait (p=0x8727626d0, val=1, clockid=3, 
abs=0x7e6c7e820) at /usr/src/lib/libc/thread/synch.h:36
#2  _rthread_cond_timedwait (cond=0x8727626d0, mutexp=0x87370dd50, 
abs=0x7e6c7e820) at /usr/src/lib/libc/thread/rthread_cond.c:106
#3  0x0000000821d06560 in g_cond_wait_until () from 
/usr/local/lib/libglib-2.0.so.4201.6
#4  0x0000000821c6b6e6 in g_async_queue_pop_intern_unlocked () from 
/usr/local/lib/libglib-2.0.so.4201.6
#5  0x0000000821cd890a in g_thread_pool_thread_proxy () from 
/usr/local/lib/libglib-2.0.so.4201.6
#6  0x0000000821cd7425 in g_thread_proxy () from 
/usr/local/lib/libglib-2.0.so.4201.6
#7  0x000000079e766f01 in _rthread_start (v=<error reading variable: Unhandled 
dwarf expression opcode 0xa3>) at /usr/src/lib/librthread/rthread.c:96
#8  0x00000007ddaf95fa in __tfork_thread () at 
/usr/src/lib/libc/arch/amd64/sys/tfork_thread.S:84
(gdb) thread 8
[Switching to thread 8 (thread 535484)]
#0  futex () at /tmp/-:3
3       in /tmp/-
(gdb) bt
#0  futex () at /tmp/-:3
#1  0x00000007ddad6d45 in _twait (p=0x8727626d0, val=1, clockid=3, 
abs=0x7975f8460) at /usr/src/lib/libc/thread/synch.h:36
#2  _rthread_cond_timedwait (cond=0x8727626d0, mutexp=0x87370dd50, 
abs=0x7975f8460) at /usr/src/lib/libc/thread/rthread_cond.c:106
#3  0x0000000821d06560 in g_cond_wait_until () from 
/usr/local/lib/libglib-2.0.so.4201.6
#4  0x0000000821c6b6e6 in g_async_queue_pop_intern_unlocked () from 
/usr/local/lib/libglib-2.0.so.4201.6
#5  0x0000000821cd890a in g_thread_pool_thread_proxy () from 
/usr/local/lib/libglib-2.0.so.4201.6
#6  0x0000000821cd7425 in g_thread_proxy () from 
/usr/local/lib/libglib-2.0.so.4201.6
#7  0x000000079e766f01 in _rthread_start (v=<error reading variable: Unhandled 
dwarf expression opcode 0xa3>) at /usr/src/lib/librthread/rthread.c:96
#8  0x00000007ddaf95fa in __tfork_thread () at 
/usr/src/lib/libc/arch/amd64/sys/tfork_thread.S:84

Reply via email to