-------- Original Message -------- Subject: Re: virt-viewer 0.5.4 crashes on debian wheezy Date: Sat, 22 Sep 2012 01:50:31 +0200 From: Dominique Rodrigues <dominique.rodrigues@xxxxxxxxxxxxx> To: Christophe Fergeau <cfergeau@xxxxxxxxxx> On Fri, 21 Sep 2012 15:10:58 +0200, Christophe Fergeau <cfergeau@xxxxxxxxxx> wrote: > On Fri, Sep 21, 2012 at 12:23:30AM +0200, Dominique Rodrigues wrote: >> >> >> I guess I got the issue. >> >> In my case, to keep remote-viewer stable, the >> following option is mandatory : >> >> -device virtio-serial-pci >> >> when I launch >> a VM with qemu-kvm. >> >> I did not have problem previsously, and still not, >> with VM configurations already with that option. >> >> So I just have to change >> configs where this line is missing. > > What you describe is a workaround at best, I'd rather understand what's > going on in this case and have virt-viewer/remote-viewer fails gracefully > or handle this situation. So gdb/valgrind traces would still be very > helpful. > > Christophe Ok, so here are some feedbacks _________________________________________________________ COMPILATION config : ./configure --without-libvirt --with-gtk=3.0 SPICE_GTK_CFLAGS="-I/usr/local/include/spice-client-gtk-3.0 -I/usr/local/include/spice-client-glib-2.0/ -I/usr/local/include/spice-1 -I/usr/local/include/spice-server" CFLAGS="-O0 -g3 -ggdb3" make && make install _________________________________________________________ RUN under Valgrind : dominique@nanoClouD:~$ valgrind --vgdb=full /usr/local/bin/remote-viewer spice://localhost:7177 ==20854== Memcheck, a memory error detector ==20854== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al. ==20854== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info ==20854== Command: /usr/local/bin/remote-viewer spice://localhost:7177 ==20854== ==20854== Warning: client switching stacks? SP change: 0x7fefff5d8 --> 0x1c3a4fe8 ==20854== to suppress, use: --max-stackframe=33869374960 or greater ==20854== Warning: client switching stacks? SP change: 0x1c3a4bf8 --> 0x7fefff5e0 ==20854== to suppress, use: --max-stackframe=33869375976 or greater ==20854== Warning: client switching stacks? SP change: 0x7fefff578 --> 0x1c3a4c00 ==20854== to suppress, use: --max-stackframe=33869375864 or greater ==20854== further instances of this message will not be shown. ==20854== Invalid free() / delete / delete[] / realloc() ==20854== at 0x4C27D4E: free (vg_replace_malloc.c:427) ==20854== by 0x41A4D8: virt_viewer_session_spice_main_channel_event (virt-viewer-session-spice.c:352) ==20854== by 0xA2F8058: g_cclosure_marshal_VOID__ENUMv (in /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.3) ==20854== by 0xA2F5A02: ??? (in /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.3) ==20854== by 0xA30E075: g_signal_emit_valist (in /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.3) ==20854== by 0xA30E8C1: g_signal_emit (in /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.3) ==20854== by 0x69D2EA9: do_emit_main_context (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D92EF: emit_main_context (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0xA57E204: g_main_context_dispatch (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3) ==20854== by 0xA57E537: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3) ==20854== by 0xA57E931: g_main_loop_run (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3) ==20854== by 0x64AF2D4: gtk_main (in /usr/lib/x86_64-linux-gnu/libgtk-3.so.0.400.2) ==20854== Address 0x1c79f4b0 is 0 bytes inside a block of size 10 free'd ==20854== at 0x4C27D4E: free (vg_replace_malloc.c:427) ==20854== by 0x41A544: virt_viewer_session_spice_main_channel_event (virt-viewer-session-spice.c:329) ==20854== by 0xA2F8058: g_cclosure_marshal_VOID__ENUMv (in /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.3) ==20854== by 0xA2F5A02: ??? (in /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.3) ==20854== by 0xA30E075: g_signal_emit_valist (in /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.3) ==20854== by 0xA30E8C1: g_signal_emit (in /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0.3200.3) ==20854== by 0x69D2EA9: do_emit_main_context (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D92EF: emit_main_context (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0xA57E204: g_main_context_dispatch (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3) ==20854== by 0xA57E537: ??? (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3) ==20854== by 0xA57E931: g_main_loop_run (in /lib/x86_64-linux-gnu/libglib-2.0.so.0.3200.3) ==20854== by 0x64AF2D4: gtk_main (in /usr/lib/x86_64-linux-gnu/libgtk-3.so.0.400.2) ==20854== ==20854== Syscall param socketcall.sendto(msg) points to uninitialised byte(s) ==20854== at 0xA839602: send (send.c:28) ==20854== by 0xA0064C9: g_socket_send_with_blocking (in /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0.3200.3) ==20854== by 0x69D3020: spice_channel_flush_wire (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D32BB: spice_channel_write (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D342C: spice_channel_write_msg (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D67FF: spice_channel_iterate_write (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D6A7E: spice_channel_iterate (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D7473: spice_channel_coroutine (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x6A07F32: coroutine_trampoline (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x6A07C1B: continuation_trampoline (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0xAA88E1F: ??? (in /lib/x86_64-linux-gnu/libc-2.13.so) ==20854== by 0x796EF9955EC873FF: ??? ==20854== Address 0x1caf9a21 is 33 bytes inside a block of size 86 alloc'd ==20854== at 0x4C28BED: malloc (vg_replace_malloc.c:263) ==20854== by 0x6A1C850: spice_malloc (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x6A1C1E4: spice_marshaller_linearize (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D3411: spice_channel_write_msg (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D67FF: spice_channel_iterate_write (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D6A7E: spice_channel_iterate (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x69D7473: spice_channel_coroutine (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x6A07F32: coroutine_trampoline (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0x6A07C1B: continuation_trampoline (in /usr/local/lib/libspice-client-glib-2.0.so.8.0.0) ==20854== by 0xAA88E1F: ??? (in /lib/x86_64-linux-gnu/libc-2.13.so) ==20854== by 0x796EF9955EC873FF: ??? ==20854== by 0x7FEFFF63F: ??? ==20854== (remote-viewer:20854): GSpice-WARNING **: Warning no automount-inhibiting implementation available --20854-- VALGRIND INTERNAL ERROR: Valgrind received a signal 11 (SIGSEGV) - exiting --20854-- si_code=1; Faulting address: 0x100000009; sp: 0x403175bf0 valgrind: the 'impossible' happened: Killed by fatal signal ==20854== at 0x3805FD87: vgPlain_get_StackTrace_wrk (m_stacktrace.c:334) ==20854== by 0x3805FE66: vgPlain_get_StackTrace (m_stacktrace.c:814) ==20854== by 0x3804A5F5: record_ExeContext_wrk (m_execontext.c:317) ==20854== by 0x38020FB9: die_and_free_mem (mc_malloc_wrappers.c:343) ==20854== by 0x3808F3E6: vgPlain_scheduler (scheduler.c:1461) ==20854== by 0x3809E449: run_a_thread_NORETURN (syswrap-linux.c:98) sched status: running_tid=1 Thread 1: status = VgTs_Runnable Erreur de segmentation That's it ! -- DOMINIQUE RODRIGUES NANOCLOUD 8, rue Lemercier 75017 Paris France standard : +33 1 77 69 64 38 529 002 743 R.C.S. Paris _______________________________________________ Spice-devel mailing list Spice-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/spice-devel