Bug 1186335

Summary: [abrt] gnome-boxes: g_type_check_instance_is_a(): gnome-boxes killed by SIGSEGV
Product: [Fedora] Fedora Reporter: Joachim Frieben <jfrieben>
Component: gnome-boxesAssignee: Christophe Fergeau <cfergeau>
Status: CLOSED EOL QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 21CC: cfergeau, jfrieben, marcandre.lureau, rvokal, twaugh, virt-maint, zeenix
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Unspecified   
URL: https://retrace.fedoraproject.org/faf/reports/bthash/22db5df0d24f1155fa9c015b85363c673ae3e6ce
Whiteboard: abrt_hash:f4ec8f46cdbc8eb5444ffadb0165049597802a01
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-12-02 08:05:50 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
File: backtrace
none
File: cgroup
none
File: core_backtrace
none
File: dso_list
none
File: environ
none
File: exploitable
none
File: limits
none
File: maps
none
File: open_fds
none
File: proc_pid_status
none
File: var_log_messages
none
Workaround for the crash none

Description Joachim Frieben 2015-01-27 13:12:12 UTC
Version-Release number of selected component:
gnome-boxes-3.14.2-2.fc21

Additional info:
reporter:       libreport-2.3.0
backtrace_rating: 4
cmdline:        /usr/bin/gnome-boxes --gapplication-service
crash_function: g_type_check_instance_is_a
executable:     /usr/bin/gnome-boxes
kernel:         3.18.3-201.fc21.x86_64
runlevel:       N 5
type:           CCpp
uid:            1001

Truncated backtrace:
Thread no. 1 (10 frames)
 #0 g_type_check_instance_is_a at gtype.c:3969
 #1 spice_session_get_channels at spice-session.c:1802
 #2 spice_gtk_session_sync_keyboard_modifiers at spice-gtk-session.c:1187
 #6 g_signal_emit_by_name at gsignal.c:3405
 #7 _gdk_x11_keymap_state_changed at gdkkeys-x11.c:639
 #8 gdk_x11_display_translate_event at gdkdisplay-x11.c:1049
 #9 _gdk_x11_event_translator_translate at gdkeventtranslator.c:51
 #10 gdk_event_source_translate_event at gdkeventsource.c:240
 #11 _gdk_x11_display_queue_events at gdkeventsource.c:338
 #12 gdk_display_get_event at gdkdisplay.c:321

Comment 1 Joachim Frieben 2015-01-27 13:12:17 UTC
Created attachment 984645 [details]
File: backtrace

Comment 2 Joachim Frieben 2015-01-27 13:12:18 UTC
Created attachment 984646 [details]
File: cgroup

Comment 3 Joachim Frieben 2015-01-27 13:12:20 UTC
Created attachment 984647 [details]
File: core_backtrace

Comment 4 Joachim Frieben 2015-01-27 13:12:22 UTC
Created attachment 984648 [details]
File: dso_list

Comment 5 Joachim Frieben 2015-01-27 13:12:23 UTC
Created attachment 984649 [details]
File: environ

Comment 6 Joachim Frieben 2015-01-27 13:12:24 UTC
Created attachment 984650 [details]
File: exploitable

Comment 7 Joachim Frieben 2015-01-27 13:12:26 UTC
Created attachment 984651 [details]
File: limits

Comment 8 Joachim Frieben 2015-01-27 13:12:28 UTC
Created attachment 984652 [details]
File: maps

Comment 9 Joachim Frieben 2015-01-27 13:12:30 UTC
Created attachment 984653 [details]
File: open_fds

Comment 10 Joachim Frieben 2015-01-27 13:12:31 UTC
Created attachment 984654 [details]
File: proc_pid_status

Comment 11 Joachim Frieben 2015-01-27 13:12:33 UTC
Created attachment 984655 [details]
File: var_log_messages

Comment 12 Christophe Fergeau 2015-03-26 11:24:18 UTC
*** Bug 1201316 has been marked as a duplicate of this bug. ***

Comment 13 Christophe Fergeau 2015-03-26 11:24:48 UTC
Happens on f22 as well.

Comment 14 Christophe Fergeau 2015-03-26 12:25:20 UTC
Reproducer at https://bugzilla.gnome.org/show_bug.cgi?id=746800#c1

Comment 15 Marc-Andre Lureau 2015-03-26 12:48:31 UTC
most likely spice-session was disposed before spice-gtk-session, and it has a weak reference, I guess it could use a weak pointer for extra safe, but I think spice-gtk-session is supposed to be always weakly handled. Unfortunately, it's hard to enforce this, so we should make it a bit more robust for this kind of situation.

Comment 16 Christophe Fergeau 2015-03-26 13:01:13 UTC
Created attachment 1006805 [details]
Workaround for the crash

Yeah this is what happens (the GObject part of SpiceSession is all garbage when this occurs), and the attached patch works around the issue. However, as noted in
 https://bugzilla.gnome.org/show_bug.cgi?id=746800 , Boxes is doing unexpected things with disconnected SpiceDisplays. I don't know if this crash will still occur once that is fixed.

Comment 17 Marc-Andre Lureau 2015-03-26 13:18:47 UTC
Comment on attachment 1006805 [details]
Workaround for the crash

that looks okayish to me (I think I would have prefered weak pointers), feel free to submit to spice-devel

Comment 18 Christophe Fergeau 2015-03-26 13:31:13 UTC
I do not really mean it to be a fix, this was just some quick debugging test, I'll try a weak pointer approach, though it would be nice to also know how to get in this situation;)

Comment 19 Fedora End Of Life 2015-11-04 12:55:49 UTC
This message is a reminder that Fedora 21 is nearing its end of life.
Approximately 4 (four) weeks from now Fedora will stop maintaining
and issuing updates for Fedora 21. It is Fedora's policy to close all
bug reports from releases that are no longer maintained. At that time
this bug will be closed as EOL if it remains open with a Fedora  'version'
of '21'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 21 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 20 Fedora End Of Life 2015-12-02 08:05:55 UTC
Fedora 21 changed to end-of-life (EOL) status on 2015-12-01. Fedora 21 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.