Bug 1066422

Summary: spice-vdagent (session part) exits on client-initiated resolution change or monitor addition (RHEV 3.3/RHEL 6.5 host)
Product: Red Hat Enterprise Linux 7 Reporter: David Jaša <djasa>
Component: spice-vdagentAssignee: Default Assignee for SPICE Bugs <rh-spice-bugs>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: high Docs Contact:
Priority: unspecified    
Version: 7.0CC: cfergeau, dblechte, dossow, marcandre.lureau, mkrcmari, rbalakri, vbenes
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: spice-vdagent-0.14.0-8.el7 Doc Type: Bug Fix
Doc Text:
No documentation needed
Story Points: ---
Clone Of: Environment:
Last Closed: 2015-03-05 08:17:42 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description David Jaša 2014-02-18 11:22:40 UTC
Description of problem:
spice-vdagent (session part) exits on client-initiated resolution change

Version-Release number of selected component (if applicable):
guest: spice-vdagent-0.14.0-7.el7.x86_64
host: spice-server-0.12.4-6.el6_5.1.x86_64 (latest RHEL 6.5 version)
client: Fedora 20 (I'll retest later with other clients)

How reproducible:
always

Steps to Reproduce:
1. install a fresh RHEL 7 guest in rhev 3.3, boot to gnome
2. resize client window or go fullscreen or add another monitor
3.

Actual results:
  * resolution remains the same
  * spice-vdagent process exits
  * spice-vdagent process can not be restarted till system-wide
    daemon spice-vdagentd gets restarted
This is what "spice-vdagent -d -d -d -x" prints after resolution changes:
window resize:
spice-vdagent[12257]: 0x17ce010 received monitors config, arg1: 0, arg2: 0, size 328
spice-vdagent[12257]: from guest: 16, 1
spice-vdagent[12257]: received monitor 0 config 1176x888+0+0
spice-vdagent[12257]: after zeroing: 1, 1
spice-vdagent[12257]: received monitor 0 config 1176x888+0+0
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  139 (RANDR)
  Minor opcode of failed request:  21 (RRSetCrtcConfig)
  Value in failed request:  0x0
  Serial number of failed request:  98
  Current serial number in output stream:  98

fullscreen toggle (start windowed, go fullscreen):
spice-vdagent[12624]: 0x233e010 received monitors config, arg1: 0, arg2: 0, size 328
spice-vdagent[12624]: from guest: 16, 1
spice-vdagent[12624]: received monitor 0 config 1920x1080+1920+0
spice-vdagent[12624]: zero_base_monitors: agent config 1920,0 rooted, adjusting to 0,0.
spice-vdagent[12624]: after zeroing: 1, 1
spice-vdagent[12624]: received monitor 0 config 1920x1080+0+0
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  139 (RANDR)
  Minor opcode of failed request:  21 (RRSetCrtcConfig)
  Value in failed request:  0x0
  Serial number of failed request:  85
  Current serial number in output stream:  85

enable display 2:
spice-vdagent[13350]: 0xb9d010 received monitors config, arg1: 0, arg2: 0, size 328
spice-vdagent[13350]: from guest: 16, 1
spice-vdagent[13350]: received monitor 0 config 1024x768+0+0
spice-vdagent[13350]: received monitor 1 config 400x373+1024+0
spice-vdagent[13350]: after zeroing: 2, 1
spice-vdagent[13350]: received monitor 0 config 1024x768+0+0
spice-vdagent[13350]: received monitor 1 config 400x373+1024+0
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  139 (RANDR)
  Minor opcode of failed request:  21 (RRSetCrtcConfig)
  Value in failed request:  0x400
  Serial number of failed request:  86
  Current serial number in output stream:  86



Expected results:
spice-vdagent keeps running and resolution gets resized

Additional info:
this may or may not be the same as bug 841262, bug 1028496 or bug 1028499 (it also may play its part in bug 1052172)

Comment 1 Marc-Andre Lureau 2014-02-18 14:01:39 UTC
It works for me with F20 as host.

What is the version of your kernel?
Is the qxl module loaded? 
What is the version of qemu on host? iirc, there is some support missing there.

I remember Christophe was tracking a similar bug in December. I guess he could help, adding in CC.

Comment 2 David Jaša 2014-02-18 15:32:41 UTC
(In reply to Marc-Andre Lureau from comment #1)
> It works for me with F20 as host.
> 
> What is the version of your kernel?

3.10.0-88.el7.x86_64

> Is the qxl module loaded? 

yes:
# lsmod | grep qxl
qxl                    69673  2 
drm_kms_helper         52758  1 qxl
ttm                    83948  1 qxl
drm                   297829  4 qxl,ttm,drm_kms_helper

> What is the version of qemu on host?

qemu-kvm-rhev-0.12.1.2-2.415.el6_5.4.x86_64
spice-server-0.12.4-6.el6_5.1.x86_64

> iirc, there is some support missing there.

What extra support is required on _host_ for resolution change of rhel7 guests compared to rhel6 or windows guests?

Comment 3 Marc-Andre Lureau 2014-02-18 16:27:52 UTC
qemu needs qxl.client_monitors_config support, not sure it is there...

Comment 5 Christophe Fergeau 2014-02-20 12:53:33 UTC
(In reply to Marc-Andre Lureau from comment #3)
> qemu needs qxl.client_monitors_config support, not sure it is there...

It is not there. This specific crash is fixed by http://lists.freedesktop.org/archives/spice-devel/2014-January/015941.html but then enabling monitors from the guest using xrandr is not working.

Comment 6 David Jaša 2014-04-09 15:55:57 UTC
(In reply to Marc-Andre Lureau from comment #3)
> qemu needs qxl.client_monitors_config support, not sure it is there...

Is there a bug for it? I can't see qxl monitor config neither in qemu changelog, nor in bugzilla.

Comment 7 Marc-Andre Lureau 2014-04-09 16:37:14 UTC
I guess that would be bug 1075139.

Comment 12 errata-xmlrpc 2015-03-05 08:17:42 UTC
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-2015-0359.html