Red Hat has released the SPICE guest drivers for Windows. In this post I’ll walk through installing and using these drivers on a Windows XP guest. You should be aware that although the documentation states that these drivers are only supported on Windows XP, they have been known to work on other versions of Windows . You can download these drivers at the url http://www.spice-space.org/download.html . The windows binaries downloads contain the drivers that I’ll be talking about here. Also available is a spice client for windows as well which I haven’t played with yet. At the end of this post I’ve also provided a CDROM iso containing these very same binaries just for convenience.
Assuming you have spice client and qemu-spice installed the first step is to launch kvm with the qxl devices using the –qxl option. You can refer to an earlier post written here on preparations to get spice installed here. Sorry that I don’t have procedure for manually building spice for other distros as I do most of my testing using the latest Fedora. Similarly to that post start your kvm windows xp guest with a command line like the following to include qxl devices. You must use the qemu compiled with spice for these options to work.
/usr/libexec/qemu-spice \ -hda /var/lib/libvirt/images/Centos4-Devel.qcow2 \ -m 512 \ -qxl 1 \ -spice port=5930,disable-ticketing &
Once kvm is lauched, the next step is to begin installation of your SPICE drivers.
Once your windows guest has finished boot it will autodetect new virtual hardware devices and will prompt you to install appropriate drivers. You’ll get the usual dialog asking you if you want to automatically download drivers or if you want to specify your drivers.

Choose “No, not at this time” and click next

Choose “Install from a list or specific location”

If you’re using the iso image provided with in this post select qxl directory as shown and select Next.

You’ll get a prompt similar to above. Just click “Continue Anyway”.

The drivers will begin installation.

The prompt you get after successful installation of the Red Hat’s qxl driver.
After your qxl driver has been installed you’ll be prompted again for another driver installation. Similar to above, choose your driver location and navigate to the vdi_port directory on the provided iso as shown below.

The driver will begin installation as shown below.

You should see your vdi driver installing as shown above

Your VDI driver install is now complete.
Last thing you need to do is install the virtual desktop agent for your windows xp guest. To do this, copy the two executable files from the vdagent directory on the cdrom iso provided in this post into a directory on your guest.

Now go to the directory where these executables are located and type “vdservice install”. This will install and start the guest agent service as shown below.
You can will now see the RHEV spice agent listed in your system services on your windows xp guest.

Your hardware device manager will also show your spice devices as shown below.

The VDI driver is shown below.

This completes all software installation.
Now you can connect to your guest using the spice client with a command like the following
/usr/bin/spicec –h localhost –p 5930
You should notice much improved video display performance. The mouse and keyboard response really does feel a lot better. You can test a multimedia performance by playing a youtube video for example to compare the experience with a guest without the spice drivers. Give it a try and feel free to post comments.
| Attachment | Size |
|---|---|
| spice-windows.iso | 6.5 MB |
Comments
The driver does work for other windows guests
Sunday, December 20, 2009 - 05:19 Anonymous (not verified)The driver maybe not supported by other windows versions (like windows 2003, vista, windows 7) but the last time i checked it ran fine on this windows versions.
Re: The driver does work for other windows guests
Sunday, December 20, 2009 - 12:03 Haydn SolomonThanks. I've updated the post to show this.
how to use network
Wednesday, December 23, 2009 - 18:21 Anonymous (not verified)Hi,
I have an XP machine which I've manage trough the virt-manager.
when running it I got:
/usr/bin/qemu-kvm -S -M pc-0.11 -cpu qemu32 -enable-kvm -m 543 -smp 1 -name xp-kvm-f11 -uuid 97d6f09b-975a-8a5e-3e1e-ef57641b3445 -monitor unix:/var/lib/libvirt/qemu/xp-kvm-f11.monitor,server,nowait -localtime -boot c -drive file=/var/lib/libvirt/images/xp-kvm-f11.img,if=ide,index=0,boot=on -drive if=ide,media=cdrom,index=2 -net nic,macaddr=52:54:00:68:ce:10,vlan=0,name=nic.0 -net tap,fd=25,vlan=0,name=tap.0 -serial none -parallel none -usb -usbdevice tablet -vnc 127.0.0.1:0 -k en-us -vga cirrus -soundhw es1370
So How to I get my network (and sound) to work?
I've tried:
/usr/libexec/qemu-spice -drive file=/var/lib/libvirt/images/xp-kvm-f11.img -net nic,macaddr=52:54:00:68:ce:10,vlan=0,name=nic.0 -net tap,fd=22,vlan=0,name=tap.0 -m 543 -smp 1 -name xp-kvm-f11 -M pc -cpu qemu32 -qxl 1 -spice port=5930,disable-ticketing
Cheers,
\G
Is there a software Broker plan ?
Tuesday, January 5, 2010 - 04:00 Anonymous (not verified)HI Guys,
This solution seems very efficient, instead, is there a plan to have a software connection broker in top of that ?
Like VMWare with VIEW or Leostream.
Also, are you willing to support VT-D VGA PAssthrough on this qemu extension ?
Thanks a lot , and great job !
Shift+F12 releases the mouse from the Spice client
Tuesday, January 12, 2010 - 12:18 Eli (not verified)... just a small piece of handy information. Not Ctrl-Alt and not right Ctrl.
Hi, I've got spice working
Wednesday, January 27, 2010 - 14:45 Jan (not verified)Hi,
I've got spice working locally but how do I connect from a windows workstation?
Local, if I start the guest I can do:
spicec -h 127.0.0.1 -p 5930 and it works.
On a remote windows workstation I do
spicec -h ip_of_guest -p 5930, spicec tries to connect for some time and dies. I ao tried
spicec -h ip_of_host -p 5930
and nothing.
How do I connect? The host and guest both have network connectivity, i can ping them both from anywhere in my LAN.
Post new comment