Re: libvirt cannot boot windows-uefi-guest with virtio disk

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 08, 2018 at 08:59:11PM +0500, Иван Иванов wrote:
I am using libvirt 3.6 version on Ubuntu 17.10 and create domain with
command:

virt-install --name dc02 --memory 1024,maxmemory=2048 --vcpus 1 --cpu host
--boot uefi,hd,network --disk /var/lib/libvirt/images/dc02.qcow2,bus=virtio
--network bridge=br.27,model=virtio --video=qxl --memballoon virtio --hvm
--controller usb3 --machine=q35 --graphics spice,listen=192.168.69.108
Domain boot failed with BSOD message "Unaccesible boot device", but when i
change virtio-drive to sata-drive, its successfuly boot

ps -ef output for virtio-drive look like:
libvirt+ 39726     1 45 19:59 ?        00:00:06 qemu-system-x86_64
-enable-kvm -name guest=dc02,debug-threads=on -S -object
secret,id=masterKey0,format=raw,file=/var/lib/libvirt/qemu/domain-11-dc02/master-key.aes
-machine pc-q35-2.10,accel=kvm,usb=off,vmport=off,dump-guest-core=off -cpu
SandyBridge,vme=on,ss=on,vmx=on,pcid=on,hypervisor=on,arat=on,tsc_adjust=on,xsaveopt=on,pdpe1gb=on
-drive
file=/usr/share/OVMF/OVMF_CODE.fd,if=pflash,format=raw,unit=0,readonly=on
-drive
file=/var/lib/libvirt/qemu/nvram/dc02_VARS.fd,if=pflash,format=raw,unit=1
-m 2048 -realtime mlock=off -smp 1,sockets=1,cores=1,threads=1 -uuid
fab3a566-46ad-4b2c-9e65-26cb685af33a -no-user-config -nodefaults -chardev
socket,id=charmonitor,path=/var/lib/libvirt/qemu/domain-11-dc02/monitor.sock,server,nowait
-mon chardev=charmonitor,id=monitor,mode=control -rtc
base=utc,driftfix=slew -global kvm-pit.lost_tick_policy=delay -no-hpet
-no-shutdown -global ICH9-LPC.disable_s3=1 -global ICH9-LPC.disable_s4=1
-boot strict=on -device
pcie-root-port,port=0x10,chassis=1,id=pci.1,bus=pcie.0,multifunction=on,addr=0x2
-device i82801b11-bridge,id=pci.2,bus=pcie.0,addr=0x1e -device
pci-bridge,chassis_nr=3,id=pci.3,bus=pci.2,addr=0x0 -device
pcie-root-port,port=0x11,chassis=4,id=pci.4,bus=pcie.0,addr=0x2.0x1 -device
pcie-root-port,port=0x12,chassis=5,id=pci.5,bus=pcie.0,addr=0x2.0x2 -device
pcie-root-port,port=0x13,chassis=6,id=pci.6,bus=pcie.0,addr=0x2.0x3 -device
pcie-root-port,port=0x14,chassis=7,id=pci.7,bus=pcie.0,addr=0x2.0x4 -device
pcie-root-port,port=0x15,chassis=8,id=pci.8,bus=pcie.0,addr=0x2.0x5 -device
nec-usb-xhci,id=usb,bus=pci.4,addr=0x0 -device
virtio-serial-pci,id=virtio-serial0,bus=pci.5,addr=0x0 -drive
file=/var/lib/libvirt/images/dc02.qcow2,format=qcow2,if=none,id=drive-virtio-disk0
-device
virtio-blk-pci,scsi=off,bus=pci.6,addr=0x0,drive=drive-virtio-disk0,id=virtio-disk0,bootindex=1
-netdev tap,fd=27,id=hostnet0,vhost=on,vhostfd=29 -device
virtio-net-pci,netdev=hostnet0,id=net0,mac=52:54:00:16:88:b3,bus=pci.1,addr=0x0,bootindex=2
-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
-spice
port=5900,addr=192.168.69.108,disable-ticketing,image-compression=off,seamless-migration=on
-device
qxl-vga,id=video0,ram_size=67108864,vram_size=67108864,vram64_size_mb=0,vgamem_mb=16,max_outputs=1,bus=pcie.0,addr=0x1
-device intel-hda,id=sound0,bus=pci.3,addr=0x1 -device
hda-duplex,id=sound0-codec0,bus=sound0.0,cad=0 -chardev
spicevmc,id=charredir0,name=usbredir -device
usb-redir,chardev=charredir0,id=redir0,bus=usb.0,port=1 -chardev
spicevmc,id=charredir1,name=usbredir -device
usb-redir,chardev=charredir1,id=redir1,bus=usb.0,port=2 -device
virtio-balloon-pci,id=balloon0,bus=pci.7,addr=0x0 -msg timestamp=on

But when i run this domain with qemu-system its succsessfuly boot and work.
Cmd looks like:
qemu-system-x86_64 -machine type=pc-q35-2.8 -accel kvm -cpu host \
-cdrom /var/lib/libvirt/images/virtio-win-0.1.141.iso \
--bios /usr/share/OVMF/OVMF_CODE.fd \
-m 2048 -smp 2 -drive
file=/var/lib/libvirt/images/dc02.qcow2,index=0,media=disk,if=virtio -boot
menu=on \
-spice addr=192.168.69.108,port=5910,disable-ticketing


This adds lot of default devices that you can't see (qom-list qemu command could
help with figuring out the differences), so maybe one of the devices along the
way (controller) has a different model and is not working in the guest.  Is it
possible that the Windows guest was installed with the disk plugged in as SATA?
Because just changing that doesn't really work for some Guest OSes and maybe
QEMU emulates some older devices that work (just a very rough guess).  For
details about the differences I'd also try asking the QEMU people, just in case
they miss it on this list.

I cannot fugire out where i went wrong

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

Attachment: signature.asc
Description: Digital signature

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux