[Spice-devel] BSOD when booting Win7 Pro with spice

David Mansfield spice at dm.cobite.com
Fri Jan 28 07:19:24 PST 2011


O
n Fri, 2011-01-28 at 00:45 +0100, Julian Sikorski wrote:
> Hi,
> 
> I wanted to try spice on Fedora 14. I have a Win7 Pro 32bit image which
> was created with virt manager. I later added virtio network and drive to
> it, installing drivers in the guest as well.
> The problem is that if I try to use this machine as per F14 wiki, i.e.:
> qemu /var/lib/libvirt/images/windows.img -usbdevice tablet -soundhw ac97
> -vga qxl -spice port=5930,password=asd -enable-kvm
> the windows guest will BSOD during boot (note that I need to do this as
> su due to the way how virt-manager sets permissions).
> Is this issue known? What info could I provide to help resolving this?


Instead of doing this, I replaced the "emulator" in the domain XML
(using 'virsh edit <vm>') with this shell script which selectively
replaces certain command line arguments and appends others.  I'm not
sure if this is 100% correct, but it works for me much better than
trying to launch directly with qemu command line.

Note1: You may need to adjust the actual path to qemu-kvm etc. based on
your system.

Note2: The first bit (checking for the "boot" argument was something I
carried over from an old version of the script, it stops the script from
messing around with the args until the invocation which boots the vm.
libvirt calls the qemu binary multiple times to probe the capabilities
before it actually launches the vm).

Note3: The actual spice bits are at the bottom, adjust them as you see
fit.

Let me know if this works for you.

Here's my "emulator" script:

#!/bin/bash

printf "%s" "$*" 2>&1 | grep -q boot

if [ $? -ne 0 ]; then
    exec /usr/bin/qemu-kvm "$@"
fi

ALLARGS=""

while [ -n "$1" ]; do
        if [ "$1" = "-vga" ]; then
                shift
        elif [ "$1" = "-vnc" ]; then
                shift
        elif [ "$1" = "-sdl" ]; then
                true
        else
                ALLARGS="$ALLARGS $1"
        fi
        shift
done

export QEMU_AUDIO_DRV=spice

SPICEOPTS="-vga qxl -spice port=5903,disable-ticketing -device virtio-serial -device spicevmc,subtype=vdagent"

exec /usr/bin/qemu-kvm $ALLARGS $SPICEOPTS



-- 
Thanks,
David Mansfield
Cobite, INC.






More information about the Spice-devel mailing list