Bug 688257

Summary: mouse click does not work over spice-xpi / controller
Product: Red Hat Enterprise Linux 6 Reporter: Lubos Kocman <lkocman>
Component: spice-vdagentAssignee: Hans de Goede <hdegoede>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: urgent Docs Contact:
Priority: urgent    
Version: 6.1CC: cpelland, dblechte, mkrcmari
Target Milestone: rcKeywords: Regression, TestBlocker
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: spice-vdagent-0.6.3-7.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-05-19 13:13:07 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Lubos Kocman 2011-03-16 16:44:28 UTC
Description of problem:

spice-vdagentd dies on startup with message in ~/.spice-vdagent/* "connect /var/run/spice-vdagent-sock: No such file or directory".

You're actually able to see mouse on Xorg startup, but you're not able to click. Keyboard input works.

After 30 seconds cursor disappears at all.

service spice-vdatentd status shows that service is dead by sybsys locked




Version-Release number of selected component (if applicable):


spice-vdagent-0.6.3-6.el6.{i686,x86_64}
rhevm ic104
spice-xpi-2.4-2.el6.x86_64
qemu-kvm-0.12.1.2-2.113.el6.test.x86_64 (happens also with 149 scratch build from uri)
spice-server-0.8.0-1.el6.x86_64
spice-client-0.8.0-1.el6.x86_64

How reproducible:


Steps to Reproduce:
1. Login to rhevm ic104 userportal
2. connect to rhel 6.1 guest (x86_64)
3. try to click by mouse
  
Actual results:

mouse at least the movement works for few seconds but clicking does not work at all.

servive spice-vdagent is dead

this happens only trough spice-xpi/controller

Expected results:

mouse clicking should work fine. service should not be dead


Additional info:

ps aux output:

emu     30195  3.3 14.4 1516044 1159552 ?     Sl   Mar15  59:20 /usr/libexec/qemu-kvm -S -M rhel6.0.0 -cpu Conroe -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name RHEL6x32 -uuid 12fdbdc5-6c81-4075-9f30-a98989e6e896 -smbios type=1,manufacturer=Red Hat,product=RHEL,version=6Server-6.1.0.1.el6,serial=33313934-3432-5A43-3230-323437523147_78:e7:d1:e0:29:3a,uuid=12fdbdc5-6c81-4075-9f30-a98989e6e896 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/RHEL6x32.monitor,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=2011-03-15T11:21:04 -boot cn -device virtio-serial-pci,id=virtio-serial0,max_ports=16,bus=pci.0,addr=0x5 -drive file=/rhev/data-center/29969559-20ba-4278-91ec-03185fa45e30/67be4bed-7a42-4905-9aed-daf3517b670c/images/7fc09598-4599-4cb3-9737-7315acbe2033/23f9cb83-e9b3-4588-b6a3-838afdbd6952,if=none,id=drive-virtio-disk0,format=qcow2,serial=b3-9737-7315acbe2033,cache=none,werror=stop,rerror=stop,aio=native -device virtio-blk-pci,bus=pci.0,addr=0x6,drive=drive-virtio-disk0,id=virtio-disk0 -drive if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -netdev tap,fd=24,id=hostnet0,vhost=on,vhostfd=27 -device virtio-net-pci,netdev=hostnet0,id=net0,mac=00:1a:4a:22:3a:05,bus=pci.0,addr=0x3 -chardev socket,id=charchannel0,path=/var/lib/libvirt/qemu/channels/RHEL6x32.com.redhat.rhevm.vdsm,server,nowait -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.rhevm.vdsm -chardev spicevmc,id=charchannel1,name=vdagent -device virtserialport,bus=virtio-serial0.0,nr=2,chardev=charchannel1,id=channel1,name=com.redhat.spice.0 -usb -spice port=5904,tls-port=5905,addr=0,x509-dir=/etc/pki/vdsm/libvirt-spice,tls-channel=main,tls-channel=inputs -k en-us -vga qxl -device AC97,id=sound0,bus=pci.0,addr=0x4

Comment 1 Hans de Goede 2011-03-17 11:42:09 UTC
As promised I've been investigating this bug this morning. It turns
out there are 2 issues, which are interacting with each other in a
bad way here.

Issue 1 is that as soon as the per-user-session (including the gdm
session) agent proces starts the global agent daemon tries to open
/dev/uinput, which fails, which is fatal, so the agent daemon exists.
This can be fixed with a "modprobe uinput" in the sysinit script

Issue 2 is that during the scenario of issue 1 the global agent
daemon opens and closes the vdagent virtio serial port, the open
causes the spice-server to switch to client mouse mode, on close
it should switch back (and this worked fine in the past), but
this is broken atm.

I've filed bug xxxxxx for issue 2, and we'll use this bug
(bug 688257) for tracking Issue 1.

Since this means respinning the spice-vdagent errata I'll also
try to fix bug 681797 while at it. I hope to have a fixed
package build by the end of today or somewhere tomorrow.

Comment 2 Hans de Goede 2011-03-17 11:44:57 UTC
Oops, bug xxxxxx above for issue 2, is bug 688572 .

Comment 4 Hans de Goede 2011-03-17 18:41:26 UTC
Ok, this is fixed in spice-vdagent-0.6.3-7.el6, moving to modified.

Comment 6 Lubos Kocman 2011-03-24 09:47:25 UTC
Verified on spice-vdagent-0.6.4-7.el6. No problems with dead-agent or not working mouse click so far.

Comment 7 errata-xmlrpc 2011-05-19 13:13:07 UTC
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on therefore solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.

http://rhn.redhat.com/errata/RHEA-2011-0576.html