Bug 1294938 - virt-viewer will core dump when close the console window by selecting View->Displays->Display 1
virt-viewer will core dump when close the console window by selecting View->D...
Status: CLOSED ERRATA
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: virt-viewer (Show other bugs)
7.2
x86_64 Unspecified
high Severity high
: rc
: ---
Assigned To: Virt Viewer Maint
Virtualization Bugs
: ZStream
Depends On: 1297830 1294937
Blocks: 1295396 1354283
  Show dependency treegraph
 
Reported: 2015-12-31 01:40 EST by mxie@redhat.com
Modified: 2016-11-03 21:13 EDT (History)
12 users (show)

See Also:
Fixed In Version: virt-viewer-2.0-7.el7
Doc Type: Bug Fix
Doc Text:
Prior to this update, closing a virt-viewer console by using the checkbox in the View -> Displays menu in some cases caused virt-viewer to terminate unexpectedly. This update fixes the underlying code, and thus prevents the described problem from occurring.
Story Points: ---
Clone Of: 1294937
: 1348158 1354283 (view as bug list)
Environment:
Last Closed: 2016-11-03 21:13:47 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description mxie@redhat.com 2015-12-31 01:40:51 EST
The bug also could be reproduced on rhel7, so clone to rhel7 

Version-Release number of selected component
virt-viewer-2.0-6.el7.x86_64

the core info as below:
#0  virt_viewer_session_on_monitor_geometry_changed (self=0x0, display=0x0)
    at virt-viewer-session.c:352
#1  0x00007fe65a108e38 in g_closure_invoke () from /lib64/libgobject-2.0.so.0
#2  0x00007fe65a11a75d in signal_emit_unlocked_R ()
   from /lib64/libgobject-2.0.so.0
#3  0x00007fe65a1224c1 in g_signal_emit_valist ()
   from /lib64/libgobject-2.0.so.0
#4  0x00007fe65a12277f in g_signal_emit () from /lib64/libgobject-2.0.so.0
#5  0x00007fe65bb7298f in gtk_check_menu_item_activate ()
   from /lib64/libgtk-3.so.0
#6  0x00007fe65a108e38 in g_closure_invoke () from /lib64/libgobject-2.0.so.0
#7  0x00007fe65a119f87 in signal_emit_unlocked_R ()
   from /lib64/libgobject-2.0.so.0
#8  0x00007fe65a1224c1 in g_signal_emit_valist ()
   from /lib64/libgobject-2.0.so.0
#9  0x00007fe65a12277f in g_signal_emit () from /lib64/libgobject-2.0.so.0
#10 0x00007fe65bd6463c in gtk_widget_activate () from /lib64/libgtk-3.so.0
#11 0x00007fe65bc53816 in gtk_menu_shell_activate_item ()
   from /lib64/libgtk-3.so.0
#12 0x00007fe65bc53b5d in gtk_menu_shell_button_release ()
   from /lib64/libgtk-3.so.0
#13 0x00007fe65bc3581e in _gtk_marshal_BOOLEAN__BOXEDv ()
   from /lib64/libgtk-3.so.0



+++ This bug was initially created as a clone of Bug #1294937 +++

Description of problem:
virt-viewer will core dump when close the console window by selecting View->Displays->Display 1

Version-Release number of selected component (if applicable):
libvirt-0.10.2-55.el6.x86_64
virt-viewer-2.0-9.el6.x86_64
libgovirt-0.3.2-2.el6.x86_64
qemu-kvm-0.12.1.2-2.482.el6.x86_64
spice-gtk-0.26-7.el6.x86_64
usbredir-0.5.1-3.el6.x86_64
gtk-vnc-0.3.10-3.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
1.Prepare a (vnc or spice)guest name "rhel6.7" and edit xml as below
 <graphics type='vnc' port='5901' autoport='no' listen='127.0.0.1'>
      <listen type='address' address='127.0.0.1'/>
 </graphics>

2.Start the vnc guest
#virsh start rhel6.7

3.Connect to a VM using remote-viewer spice://<host_ip>:<port> or virt-viewer $guest
#remote-viewer spice://127.0.0.1:5901

or 

#virt-viewer rhel6.7

4.Close the console window by selecting View->Displays->Display1, then the console will be closed and core dump and the debug info shows as below:

[root@localhost ~]# virt-viewer rhel6.7

(virt-viewer:6452): virt-viewer-CRITICAL **: virt_viewer_display_get_session: assertion `VIRT_VIEWER_IS_DISPLAY(self)' failed

(virt-viewer:6452): virt-viewer-CRITICAL **: virt_viewer_session_get_app: assertion `VIRT_VIEWER_IS_SESSION(self)' failed

(virt-viewer:6452): virt-viewer-CRITICAL **: virt_viewer_display_get_session: assertion `VIRT_VIEWER_IS_DISPLAY(self)' failed
Segmentation fault (core dumped)


Actual results:
As description

Expected results:
Close the console window by selecting View->Displays->Display 1 normally

Addtional info:
Please refer to core info :
#0  virt_viewer_session_on_monitor_geometry_changed (self=0x0, display=0x0)
    at virt-viewer-session.c:352
#1  0x0000003151c0e3de in g_closure_invoke () from /lib64/libgobject-2.0.so.0
#2  0x0000003151c248d5 in ?? () from /lib64/libgobject-2.0.so.0
#3  0x0000003151c25d76 in g_signal_emit_valist ()
   from /lib64/libgobject-2.0.so.0
#4  0x0000003151c26333 in g_signal_emit () from /lib64/libgobject-2.0.so.0
#5  0x000000315c8a8c7e in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
#6  0x0000003151c0e3de in g_closure_invoke () from /lib64/libgobject-2.0.so.0
#7  0x0000003151c241a8 in ?? () from /lib64/libgobject-2.0.so.0
#8  0x0000003151c25d76 in g_signal_emit_valist ()
   from /lib64/libgobject-2.0.so.0
#9  0x0000003151c26333 in g_signal_emit () from /lib64/libgobject-2.0.so.0
#10 0x000000315ca8cb5e in gtk_widget_activate ()
   from /usr/lib64/libgtk-x11-2.0.so.0
#11 0x000000315c9665bd in gtk_menu_shell_activate_item ()
   from /usr/lib64/libgtk-x11-2.0.so.0
#12 0x000000315c9680ea in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
#13 0x000000315c9559d3 in ?? () from /usr/lib64/libgtk-x11-2.0.so.0
#14 0x0000003151c0e3de in g_closure_invoke () from /lib64/libgobject-2.0.so.0
#15 0x0000003151c2451f in ?? () from /lib64/libgobject-2.0.so.0
#16 0x0000003151c25bbb in g_signal_emit_valist ()
   from /lib64/libgobject-2.0.so.0
Comment 2 Fabiano Fidêncio 2016-01-02 09:31:22 EST
Already fixed upstream by commit: 26c2eccd96995231bbe82ee7d1164b704072b1f1
Comment 4 xiaodwan 2016-04-15 02:29:44 EDT
I can reproduce it following the steps in #comment 1 with virt-viewer-2.0-6.el7.x86_64.

Then upgrade the virt-viewer to latest virt-viewer-2.0-7.el7.x86_64.
The issue doesn't occur any more.

So move the bug from ON_QA to VERIFIED.
Comment 8 errata-xmlrpc 2016-11-03 21:13:47 EDT
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-2229.html

Note You need to log in before you can comment on or make changes to this bug.