Description of problem: Start a remote spicy session then kill spicy with a SIGABRT or shutdown pc Version-Release number of selected component: spice-gtk-tools-0.27-3.fc21 Additional info: reporter: libreport-2.3.0 backtrace_rating: 4 cmdline: spicy -h telco.di.unisa.it -p 6789 crash_function: signal_handler executable: /usr/bin/spicy kernel: 3.18.7-200.fc21.x86_64 runlevel: N 5 type: CCpp uid: 1000 Truncated backtrace: Thread no. 1 (4 frames) #2 signal_handler at spicy.c:1725 #4 fsync at ../sysdeps/unix/syscall-template.S:81 #5 write_to_temp_file at gfileutils.c:1107 #6 g_file_set_contents at gfileutils.c:1197
Created attachment 996105 [details] File: backtrace
Created attachment 996106 [details] File: build_ids
Created attachment 996107 [details] File: cgroup
Created attachment 996108 [details] File: core_backtrace
Created attachment 996109 [details] File: dso_list
Created attachment 996110 [details] File: environ
Created attachment 996111 [details] File: limits
Created attachment 996112 [details] File: maps
Created attachment 996113 [details] File: open_fds
Created attachment 996114 [details] File: proc_pid_status
Created attachment 996115 [details] File: var_log_messages
*** Bug 1211571 has been marked as a duplicate of this bug. ***
Looked into this out of curiousity. signal_handler is: static void signal_handler(int signum) { static gint recursion = FALSE; /* * reset all signal handlers: any further crashes should just be allowed * to crash normally. * */ signal(SIGSEGV, segv_handler); signal(SIGABRT, abrt_handler); signal(SIGFPE, fpe_handler); signal(SIGILL, ill_handler); #ifndef G_OS_WIN32 signal(SIGBUS, bus_handler); #endif /* Stop bizarre loops */ if (recursion) abort (); recursion = TRUE; g_main_loop_quit(mainloop); } It's hitting the abort()... but the usage of signal handler is strange anyways. I don't know why it wants to catch SIGABRT etc, the only thing it seems to want to handle is SIGINT and SIGTERM And you can't call any gtk functions from a signal handler, which may contribute to crashes here: http://askra.de/software/gtk-signals/x2992.html
(In reply to Cole Robinson from comment #13) > And you can't call any gtk functions from a signal handler, which may > contribute to crashes here: http://askra.de/software/gtk-signals/x2992.html And if it doesn't crash, it is likely to deadlock, because g_main_loop_quit acquires mutexes, and that is not async signal safe.
That should fix it: http://lists.freedesktop.org/archives/spice-devel/2015-May/019697.html
f22 should have spice-gtk 0.29 with the fixes now