[Spice-devel] Vdagent not working on xen linux hvm DomUs

Alon Levy alevy at redhat.com
Tue Oct 29 10:40:42 CET 2013


On 10/29/2013 11:16 AM, Fabio Fantoni wrote:
> Il 18/10/2013 15:58, Fabio Fantoni ha scritto:
>>> On 10/14/2013 05:52 PM, Fabio Fantoni wrote:
>>> >/  I have added vdagent support on libxl for hvm domUs using
>>> upstream qemu.
>>> />/  On windows domUs it is working without problems found in over
>>> one year
>>> />/  that I'm using it.
>>> />/
>>> />/  On linux domUs is not working, it seems to be a problem on the
>>> kernel
>>> />/  side and/or linux vdagent services.
>>> />/  The domU parameters are the same on both linux and windows domUs
>>> and
>>> />/  below you can be find some details on dom0 if needed:
>>> />/  http://lists.xen.org/archives/html/xen-devel/2013-10/msg01111.html
>>> />/  On my latest test with Fedora19 domU:
>>> />/  - on install one month ago there was this log:
>>> />/  /var/log/spice-vdagent.log (nomore now)
>>> />>/  spice-vdagent[1398]: err: Missing virtio device
>>> />>/  '/dev/virtio-ports/com.redhat.spice.0': No such file or directory
>>> /
>>> This seems to be the error. You are missing the virtio device. Does the
>>> domU have the virtio-serial module loaded (or compiled in)? does the vm
>>> have the appropriate corresponding options in xen for creating that
>>> virtio pci device and the virtio serial port on top of it, with that
>>> name?
>>
> 
>> Thanks for reply.
>> I use the default kernel already installed on Fedora19 (plus software
>> update).
>> I did a grep on kernel config about VIRTIO and this is the result:
>>> less /boot/config-3.11.4-201.fc19.x86_64 | grep VIRTIO
>>> CONFIG_NET_9P_VIRTIO=m
>>> CONFIG_VIRTIO_BLK=m
>>> CONFIG_SCSI_VIRTIO=m
>>> CONFIG_VIRTIO_NET=m
>>> CONFIG_VIRTIO_CONSOLE=y
>>> CONFIG_HW_RANDOM_VIRTIO=m
>>> CONFIG_VIRTIO=y
>>> CONFIG_VIRTIO_PCI=y
>>> CONFIG_VIRTIO_BALLOON=m
>>> CONFIG_VIRTIO_MMIO=m
>>> # CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set
>>
> 
>>
>>> >/  - spice-vdagent package is installed
>>> />/  - /dev/virtio-ports is missed
>>> />/  - lspci shows virtio console with virtio-pci driver in use
>>> /virtio console is something else. virtio-serial replaced it iirc,
>>> and is
>>> backward compatible, but you don't need a console. I'm not familiar with
>>> Xen so I can't help in this.
>>>
>>> But this is your problem - don't bother checking any thing else until
>>> you have this device node present in the guest.
>>
> 
>> I used these qemu parameters in xen patch for vdagent support:
>> -device virtio-serial
>> -chardev spicevmc,id=vdagent,name=vdagent
>> -device virtserialport,chardev=vdagent,name=com.redhat.spice.0
>>
>> I also tried to use these qemu parameters instead with same result:
>> -device virtio-serial-pci,id=virtio-serial0
>> -device
>> virtserialport,bus=virtio-serial0.0,chardev=spicechannel0,name=com.redhat.spice.0
>>
>> -chardev spicevmc,id=spicechannel0,name=vdagent
>>
>> Since with same parameters windows guests it works, it seems there
>> would be some strange behaviours on guest's linux kernel.
>> I took a quick look at code but to no avail.
>>
>> If you need more details and/or tests tell me and I'll post them.
>>
> 
> Ping

I don't have any clever ideas - you seem to be creating the device
correctly, like you say it's a kernel problem, try adding debug prints etc.

> 
>>> >/
>>> />/  Tried to check service:
>>> />/
>>> />/  # systemctl status spice-vdagentd
>>> />/  spice-vdagentd.service - Agent daemon for Spice guests
>>> />/     Loaded: loaded (/usr/lib/systemd/system/spice-vdagentd.service;
>>> />/  enabled)
>>> />/     Active: inactive (dead)
>>> />/
>>> />/  # systemctl start spice-vdagentd
>>> />/  # systemctl status spice-vdagentd
>>> />/  spice-vdagentd.service - Agent daemon for Spice guests
>>> />/     Loaded: loaded (/usr/lib/systemd/system/spice-vdagentd.service;
>>> />/  enabled)
>>> />/     Active: active (running) since lun 2013-10-14 16:32:52 CEST;
>>> 6s ago
>>> />/    Process: 1723 ExecStart=/usr/sbin/spice-vdagentd
>>> />/  $SPICE_VDAGENTD_EXTRA_ARGS (code=exited, status=0/SUCCESS)
>>> />/    Process: 1720 ExecStartPre=/bin/rm -f
>>> />/  /var/run/spice-vdagentd/spice-vdagent-sock (code=exited,
>>> />/  status=0/SUCCESS)
>>> />/   Main PID: 1725 (spice-vdagentd)
>>> />/     CGroup: name=systemd:/system/spice-vdagentd.service
>>> />/             ââ1725 /usr/sbin/spice-vdagentd
>>> />/
>>> />/  On /var/log/messages:
>>> />/  ...
>>> />>/  Oct 14 16:32:52 localhost systemd[1]: Starting Agent daemon for
>>> Spice
>>> />>/  guests...
>>> />>/  Oct 14 16:32:52 localhost systemd[1]: PID file
>>> />>/  /var/run/spice-vdagentd/spice-vdagentd.pid not readable (yet?)
>>> after
>>> />>/  start.
>>> />>/  Oct 14 16:32:52 localhost systemd[1]: Started Agent daemon for
>>> Spice
>>> />>/  guests.
>>> />/
>>> />/  But vdagent is still not working.
>>> />/
>>> />/
>>> />/  If you need more details and test tell me and I'll post them.
>>> />/
>>> />/  Thanks for any reply./
> 
> 



More information about the Spice-devel mailing list