[Spice-devel] [Qemu-devel] Vioserial of Windows guest OS on Qemu 0.15

Michael Roth mdroth at linux.vnet.ibm.com
Mon Jan 16 17:50:13 PST 2012


On 01/15/2012 08:02 PM, Charles.Tsai-蔡清海-研究發展部 wrote:
> Vadim,
>
> Thank you for your prompt reply. Here are the information for our test case.
>
>
> 1) we use the following command line to launch the guest OS
>
>
> /usr/bin/kvm -S -M pc-0.14 -enable-kvm -m 1024 -smp 1,sockets=1,cores=1,threads=1 -name win_xp -uuid d9388815-ddd3-c38e-33c2-a9d5fcc7a775 -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/var/lib/libvirt/qemu/win_xp.monitor,server,nowait
> -mon chardev=charmonitor,id=monitor,mode=readline
> -rtc base=localtime
> -device virtio-serial-pci,id=virtio-serial0,bus=pci.0,multifunction=on,addr=0x5.0x0
> -drive file=/media/Images/Windows-XP.img,if=none,id=drive-ide0-0-0,format=raw
> -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0,bootindex=1
> -netdev tap,fd=17,id=hostnet0
> -device rtl8139,netdev=hostnet0,id=net0,mac=52:54:00:e8:dc:b1,bus=pci.0,multifunction=on,addr=0x3.0x0
> -chardev pty,id=charserial0
> -device isa-serial,chardev=charserial0,id=serial0
> -chardev spicevmc,id=charchannel0,name=vdagent
> -device virtserialport,bus=virtio-serial0.0,nr=1,chardev=charchannel0,id=channel0,name=com.redhat.spice.0
> -usb -device usb-tablet,id=input0
> -spice port=5900,addr=0.0.0.0,disable-ticketing
> -vga qxl -global qxl-vga.vram_size=67108864 -device virtio-balloon-pci,id=balloon0,bus=pci.0,multifunction=on,addr=0x4.0x0
>
>
>
> 2). In Guest Windows XP OS
>
>
> When the following callback function of the vioserial device  is called in guest OS. The allocated resources is empty.
>
>
> VIOSerialEvtDevicePrepareHardware() ---This function is to get the I/O address of the vioserial device and map the physical address to the logical address space.
>
> I added the following trace and the value of nListSize is ZERO.
> TraceEvents(TRACE_LEVEL_INFORMATION, DBG_PNP, "%s (nListSize=%d)\n", __FUNCTION__,nListSize);
>
>
> So far, we have tested Qemu 0.14 without any problem but Qemu 0.15 seemed to be broken in vioserial device.
> Let me know if you need further information. Thanks.
>

Hi Charles,

What versions of the virtio-win drivers are you using?

I've been testing virtio-serial on windows using the latest qemu.git 
(1.0). Linux guests work fine, but I've been having various issues with 
Windows 7, XP SP3, and Server 2008 R1. XP SP3 works intermittently for 
me using RHEL6.0 virtio-win, as well as the drivers at:

http://alt.fedoraproject.org/pub/alt/virtio-win/latest/images/bin/

But I've been getting a mix of issues such as guest hangs, vioser-test 
failing to enumerate any virtio-serial devices, or various non-critical 
error messages from qemu that seem to coincide with the channel being 
open/closed (occasionally resulting in the channel becoming unresponsive).

Do any of these seem similar to the behaviour you're seeing? If so I'll 
see if the issues go away on 0.14.0 and follow-up with a git bisect.



More information about the Spice-devel mailing list