Bug 1274692 - several problems with vioserial and vdagent
several problems with vioserial and vdagent
Status: NEW
Product: Virtualization Tools
Classification: Community
Component: virt-viewer (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Daniel Berrange
Depends On:
  Show dependency treegraph
Reported: 2015-10-23 07:50 EDT by bertaudmarc
Modified: 2016-04-18 03:32 EDT (History)
11 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed:
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
dump on ws2012 (191.21 KB, application/octet-stream)
2015-10-26 09:51 EDT, bertaudmarc
no flags Details
minidump (270.94 KB, application/octet-stream)
2015-10-26 09:54 EDT, bertaudmarc
no flags Details
dump analysis with windbg (219.40 KB, image/jpeg)
2015-10-26 11:16 EDT, bertaudmarc
no flags Details

  None (edit)
Description bertaudmarc 2015-10-23 07:50:51 EDT
Description of problem:
Several probably linked problems:
- The Spice vdagent (vdservice) stops after starting;
- Impossible to install the virtIO-serial driver;
- No PCI simple communication controller in Device Manager;
- addition of a spice channel refused by virt-manager;
- copy/paste doesn't work

Version-Release number of selected component (if applicable):
host: Debian Jessie, Virt-Manager 1:1.0.1-5
guest: Windows server 2012 64b
virtio drivers: virtio-win-0.1.1
 disk drive: Red Hat Virtio scsi disk device
 display adapter: Red Hat QXL controller (version 7/28/2015
 network adapter: Read Hat Virtio Ethernet controller
 system devices: virtio balloon driver
 vioserial: 09/22/2015

How reproducible:

Steps to Reproduce:

Actual results:

c:/windows/Temp/vdagent.log, last messages:
VDAgent ::init_vio_serial:: failed opening \\.\Global\com.redhat.spice.0, error 2
c:/windows/Temp/vdservice.log, last messages:
vdservice::execute::agent killed  six times
restart_agent::agent restarted too many times
vdservice::stop::service stopped
Expected results:

Additional info:
Comment 1 bertaudmarc 2015-10-23 12:31:02 EDT
Now I added in virt-manager a virtio serial controller.
I start the vm, go in device manager and see a "PCI simple communication controller".

I select "PCI simple", update driver, select the virtio serial driver (vioserial). The result is a BSOD with WDF_VIOLATION code.
Comment 2 bertaudmarc 2015-10-23 12:44:42 EDT
Other manipulation, independantly of the above one.

In the virt-manager, I add hardware, select channel, name = com.redhat.spice.0
type= spicevmc

I have the following message:
error starting domain. early end of file from monitor.
- device virtserialport, bus=virtio-serial0.0.nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0

virtio-serial bus: out of range port id specified, max allowed:0
device 'virtserialport' could not be initialzed.
Comment 3 bertaudmarc 2015-10-24 09:53:28 EDT
libvirt version: 1.2.9
qemu version: 2.1.2
Comment 4 Yaniv Kaul 2015-10-25 03:36:44 EDT

Are you sure this bug is reported against the right product and component? This does not sounds like a RHEV issue.
Comment 5 bertaudmarc 2015-10-25 10:22:20 EDT
No !
By analogy with the bug  https://bugzilla.redhat.com/show_bug.cgi?id=895356
which is not dependant of RHEV bur rather for windows 2012.
I guess people like Vadim Rozenfeld or Martin could help.
Any suggestion if I must move my question ?
Comment 6 Yaniv Kaul 2015-10-25 10:34:56 EDT
(In reply to bertaudmarc from comment #5)
> No !
> By analogy with the bug  https://bugzilla.redhat.com/show_bug.cgi?id=895356
> which is not dependant of RHEV bur rather for windows 2012.
> I guess people like Vadim Rozenfeld or Martin could help.
> Any suggestion if I must move my question ?

First of all, you are mixing multiple issues into a single bug report. This makes it very difficult to handle and distribute the issues to people. I suggest multiple reports. Secondly, if you think Vadim or Martin can help - CC them, set NeedInfo or just email them / the users mailing list.

- Why not file it on virt-manager, if you have issues around it?
- I'm sure spice has components as well (perhaps even in freedesktop.org?)
- issue 895356 is not a bug, but a Request For Enhancement.
- I'd add logs. The libvirt.xml file for example, is critical.If you can't get the virtio-serial, try to get it working first, before everything else.
Comment 7 bertaudmarc 2015-10-25 11:17:34 EDT
These problems seem to be linked: no channel, no virtio-serial installed.
Most errors often referred to buqzilla.redhat.com by searching with google: this is probably the best source to solve such problems !
It's the first time I use this site: I will CC them ...
Comment 8 bertaudmarc 2015-10-25 11:31:51 EDT
The xml file of my vm: sbs2012.xml                                  

OVERWRITTEN AND LOST. Changes to this xml configuration should be made using:
  virsh edit sbs2012
or other application using the libvirt API.

<domain type='kvm'>
  <memory unit='KiB'>16777216</memory>
  <currentMemory unit='KiB'>8388608</currentMemory>
  <vcpu placement='static'>8</vcpu>
    <type arch='x86_64' machine='pc-0.12'>hvm</type>
    <boot dev='hd'/>
  <cpu mode='custom' match='exact'>
    <model fallback='allow'>Nehalem</model>
    <feature policy='require' name='tm2'/>
    <feature policy='require' name='est'/>
    <feature policy='require' name='monitor'/>
    <feature policy='require' name='ds'/>
    <feature policy='require' name='ss'/>
    <feature policy='require' name='vme'/>
    <feature policy='require' name='dtes64'/>
    <feature policy='require' name='rdtscp'/>
    <feature policy='require' name='ht'/>
    <feature policy='require' name='dca'/>
    <feature policy='require' name='pbe'/>
    <feature policy='require' name='tm'/>
    <feature policy='require' name='pdcm'/>
    <feature policy='require' name='vmx'/>
    <feature policy='require' name='ds_cpl'/>
    <feature policy='require' name='xtpr'/>
    <feature policy='require' name='acpi'/>
  <clock offset='localtime'/>
    <disk type='file' device='disk'>
      <driver name='qemu' type='raw' cache='none' io='native'/>
      <source file='/var/lib/libvirt/images/sbs2012-1.img'/>
      <target dev='vda' bus='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0b' function='0x0'/>
    <disk type='block' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <source dev='/dev/sr0'/>
      <target dev='hdc' bus='ide'/>
      <address type='drive' controller='0' bus='1' target='0' unit='0'/>
    <disk type='file' device='cdrom'>
      <driver name='qemu' type='raw'/>
      <source file='/usr/share/virtio-win/virtio-win-0.1.110.iso'/>
      <target dev='hdd' bus='ide'/>
      <address type='drive' controller='0' bus='1' target='0' unit='1'/>
    <controller type='ide' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x01' function='0x1'/>
    <controller type='usb' index='0' model='ich9-ehci1'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x07' function='0x0'/>
    <controller type='usb' index='0' model='ich9-uhci1'>
      <master startport='0'/>
     <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'$
    <controller type='usb' index='0' model='ich9-uhci2'>
      <master startport='2'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x09' function='0x0'$
    <controller type='usb' index='0' model='ich9-uhci3'>
      <master startport='4'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0a' function='0x0'$
    <controller type='pci' index='0' model='pci-root'/>
    <controller type='virtio-serial' index='0'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'$
    <interface type='bridge'>
      <mac address='52:54:00:33:71:2f'/>
      <source bridge='br0'/>
      <model type='virtio'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x0c' function='0x0'$
    <serial type='pty'>
      <target port='0'/>
    <console type='pty'>
      <target type='serial' port='0'/>
    <input type='tablet' bus='usb'/>
    <input type='mouse' bus='ps2'/>
    <input type='keyboard' bus='ps2'/>
    <graphics type='spice' autoport='yes' listen=''>
      <listen type='address' address=''/>
    <sound model='es1370'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x04' function='0x0'$
      <model type='qxl' ram='65536' vram='65536' heads='1'/>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x02' function='0x0'$
    <memballoon model='virtio'>
      <address type='pci' domain='0x0000' bus='0x00' slot='0x05' function='0x0'$
Comment 9 Vadim Rozenfeld 2015-10-25 20:48:33 EDT
(In reply to bertaudmarc from comment #1)
> Now I added in virt-manager a virtio serial controller.
> I start the vm, go in device manager and see a "PCI simple communication
> controller".
> I select "PCI simple", update driver, select the virtio serial driver
> (vioserial). The result is a BSOD with WDF_VIOLATION code.

Have you managed to install vioserial driver? Or can you upload the relevant 
crash dump file?

Comment 10 bertaudmarc 2015-10-26 09:43:48 EDT
Yes, see comment #1, the result is a blue screen with WDF_VIOLATION code when I update the driver. The text begin by "your pc ran into a problem need to restart ...". 
Where is the crash dump in ws2012 ?
Comment 11 bertaudmarc 2015-10-26 09:51 EDT
Created attachment 1086522 [details]
dump on ws2012

I found this as dump
Comment 12 bertaudmarc 2015-10-26 09:54 EDT
Created attachment 1086523 [details]

and this
Comment 13 bertaudmarc 2015-10-26 11:16 EDT
Created attachment 1086537 [details]
dump analysis with windbg
Comment 15 Yaniv Lavi 2015-10-28 12:46:42 EDT
I think
Comment 16 bertaudmarc 2015-11-02 17:59:35 EST
What are you waiting for me now ?
Comment 17 bertaudmarc 2015-11-17 08:40:26 EST
virt-viewer version: 1.0-1
Comment 18 bertaudmarc 2015-11-17 11:51:04 EST
I succeeded to create the Channel spice. Why now ? That will stay a mystery.
When I start the vm I have the following message:

Error starting domain: internal error: early end of file from monitor: possible problem:
2015-11-17T16:47:01.897072Z qemu-system-x86_64: -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0: virtio-serial-bus: Out-of-range port id specified, max. allowed: 0
2015-11-17T16:47:01.897138Z qemu-system-x86_64: -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0: Device 'virtserialport' could not be initialized
Comment 19 bertaudmarc 2015-11-18 11:31:16 EST
As suggested by some people I changed in the xml file the following line:
<type arch='x86_64' machine='pc-0.12'>hvm</type>
by this one:
<type arch='x86_64' machine='pc-1.1'>hvm</type>
and ...

the domain can start ! why ?
Comment 20 bertaudmarc 2015-11-18 11:34:07 EST
Finally I installed the vioser.inf driver for the PCI simple communications controller !
Comment 21 bertaudmarc 2015-11-18 11:41:55 EST
The copy/paste procedure seems to work.
The "fullscreen" is not auto ?

My problems are solved but the explanation is welcome ;-)

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