Virtio disk boot problem

draak

Renowned Member
Mar 1, 2012
19
0
66
Hello,

I can't seem to boot from my disk when using Virtio. When using IDE in the same drive it boots fine. This is WinXP VM and I already have the drivers installed and working fine (I was happily using Virtio disks). SeaBIOS just says "Boot failed: could not read the boot disk". I have boot order setup right, with Virtio disk set to boot first. Can you please suggest a solution? Thank you.

My setup is as follows.

/usr/bin/kvm -id 100 -chardev socket,id=monitor,path=/var/run/qemu-server/100.mon,server,nowait -mon chardev=monitor,mode=readline -vnc unix:/var/run/qemu-server/100.vnc,x509,password -pidfile /var/run/qemu-server/100.pid -daemonize -usbdevice tablet -name XP -smp sockets=1,cores=2 -nodefaults -boot menu=on -vga cirrus -localtime -rtc-td-hack -k en-us -drive file=/var/lib/vz/images/100/vm-100-disk-1.raw,boot=on,if=none,id=drive-virtio0,aio=native,cache=none -device virtio-blk-pci,drive=drive-virtio0,id=virtio0,bus=pci.0,addr=0xa,bootindex=100 -m 3072 -netdev type=tap,id=net0,ifname=tap100i0,script=/var/lib/qemu-server/pve-bridge,vhost=on -device virtio-net-pci,mac=82:05:BF:3F:20:CE,netdev=net0,bus=pci.0,addr=0x12,id=net0,bootindex=300

pve-manager: 2.0-38 (pve-manager/2.0/af81df02)
running kernel: 2.6.32-7-pve
proxmox-ve-2.6.32: 2.0-60
pve-kernel-2.6.32-6-pve: 2.6.32-55
pve-kernel-2.6.32-7-pve: 2.6.32-60
lvm2: 2.02.88-2pve1
clvm: 2.02.88-2pve1
corosync-pve: 1.4.1-1
openais-pve: 1.1.4-2
libqb: 0.10.1-2
redhat-cluster-pve: 3.1.8-3
resource-agents-pve: 3.9.2-3
fence-agents-pve: 3.1.7-1
pve-cluster: 1.0-23
qemu-server: 2.0-25
pve-firmware: 1.0-15
libpve-common-perl: 1.0-17
libpve-access-control: 1.0-17
libpve-storage-perl: 2.0-12
vncterm: 1.0-2
vzctl: 3.0.30-2pve1
vzprocps: 2.0.11-2
vzquota: 3.0.12-3
pve-qemu-kvm: 1.0-5
ksm-control-daemon: 1.1-1

SeaBIOS is version 0.5.1-3 (In console it shows version 0.5.1-20100616_222654-volta )
 
This setup using IDE works fine.

boot: cdn
bootdisk: ide0
cores: 2
ide0: local:100/vm-100-disk-1.raw
ide2: none,media=cdrom
memory: 3072
name: XP
net0: virtio=3A:0E:A0:70:9F:31,bridge=vmbr0
ostype: wxp
sockets: 1

This setup with Virtio doesn't.

boot: cdn
bootdisk: virtio0
cores: 2
ide2: none,media=cdrom
memory: 3072
name: XP
net0: virtio=3A:0E:A0:70:9F:31,bridge=vmbr0
ostype: wxp
sockets: 1
virtio0: local:100/vm-100-disk-1.raw
 
To 'convince' XP to work with virtio: Let the first harddisk as IDE, add another harddisk as VIRTIO and boot. After the drivers are installed, reboot and shutdown. Change the first harddisk to VIRTIO and it should do. Later then, delete the second harddisk.

Dirk
 
To 'convince' XP to work with virtio: Let the first harddisk as IDE, add another harddisk as VIRTIO and boot. After the drivers are installed, reboot and shutdown. Change the first harddisk to VIRTIO and it should do. Later then, delete the second harddisk.

Dirk

I've done this several times and it didn't work. The issue seems to be with the BIOS as it can't seem to recognise the boot disk.
 
I've done this several times and it didn't work. The issue seems to be with the BIOS as it can't seem to recognise the boot disk.

The question is why you have 'SeaBIOS version 0.5.1-3' - Proxmox VE does not deliver that version.
 
Yes, that would explain it. What would be the best way to correct it? Could you please suggest a command, as in
apt-get ......

Cheers!
 
Yes, that would explain it. What would be the best way to correct it? Could you please suggest a command, as in
apt-get ......

Cheers!

Seems you have the correct package 'pve-qemu-kvm: 1.0-5' - maybe you manually installed something?
 
I've installed ProXmoX 2 beta and then on top of it I installed Gnome for dev purposes.

kvm --version
QEMU emulator version 1.0.50 (qemu-kvm-devel), Copyright (c) 2003-2008 Fabrice Bellard

md5 sums are as follows
9649e5d3cebac9106af3d6555dbf4ae7 /usr/share/kvm/bios.bin
md5sum: /usr/share/kvm/keymaps: Is a directory
e78b7ffa1c47e5ffb1992e45f9d01fcc /usr/share/kvm/linuxboot.bin
c3b0e694ef0a6ac0c90a1a17039f3fe8 /usr/share/kvm/multiboot.bin
898d7d0b3ed4a030c877b9185b4ef6be /usr/share/kvm/pxe-e1000.rom
2f8279177fdc2ce5abc47d9f1e303db1 /usr/share/kvm/pxe-eepro100.rom
095cdf2b26084ce22adb883e9c43fc5a /usr/share/kvm/pxe-ne2k_pci.rom
15e38b82922a058c6df6eaffbad1b916 /usr/share/kvm/pxe-pcnet.rom
22f4b6ae5650988f999ee651a3734462 /usr/share/kvm/pxe-rtl8139.rom
91ad9770f5717a89d518534f45f1332d /usr/share/kvm/pxe-virtio.rom
6611fe7b0768d4caf0540cfbd121518e /usr/share/kvm/sgabios.bin
bdcf515a5d1080e0e2af13cb8c35f49f /usr/share/kvm/vapic.bin
48ca43ec7b5ccbc05f3125a01496c52c /usr/share/kvm/vgabios.bin
4481197bf050d6c3f4dd5b2cb43ed633 /usr/share/kvm/vgabios-cirrus.bin
946180134acdffcb4619a2ef95383c0a /usr/share/kvm/vgabios-qxl.bin
07b43dd3441aad915bcf30811d81cc3d /usr/share/kvm/vgabios-stdvga.bin
f3f86e8ba387ca6a4772a3576c37bace /usr/share/kvm/vgabios-vmware.bin
 
open("/etc/ld.so.cache", O_RDONLY) = 3
open("/usr/lib/libnss3.so.1d", O_RDONLY) = 3
open("/usr/lib/libnssutil3.so.1d", O_RDONLY) = 3
open("/usr/lib/libsmime3.so.1d", O_RDONLY) = 3
open("/usr/lib/libssl3.so.1d", O_RDONLY) = 3
open("/usr/lib/libplds4.so.0d", O_RDONLY) = 3
open("/usr/lib/libplc4.so.0d", O_RDONLY) = 3
open("/usr/lib/libnspr4.so.0d", O_RDONLY) = 3
open("/lib/libpthread.so.0", O_RDONLY) = 3
open("/lib/libdl.so.2", O_RDONLY) = 3
open("/lib/librt.so.1", O_RDONLY) = 3
open("/usr/lib/libgthread-2.0.so.0", O_RDONLY) = 3
open("/lib/libglib-2.0.so.0", O_RDONLY) = 3
open("/lib/libutil.so.1", O_RDONLY) = 3
open("/lib/libncurses.so.5", O_RDONLY) = 3
open("/lib/libuuid.so.1", O_RDONLY) = 3
open("/lib/libpng12.so.0", O_RDONLY) = 3
open("/usr/lib/libjpeg.so.62", O_RDONLY) = 3
open("/usr/lib/libgnutls.so.26", O_RDONLY) = 3
open("/usr/lib/libSDL-1.2.so.0", O_RDONLY) = 3
open("/usr/lib/libX11.so.6", O_RDONLY) = 3
open("/lib/libaio.so.1", O_RDONLY) = 3
open("/lib/libm.so.6", O_RDONLY) = 3
open("/usr/lib/libz.so.1", O_RDONLY) = 3
open("/lib/libc.so.6", O_RDONLY) = 3
open("/lib/libpcre.so.3", O_RDONLY) = 3
open("/usr/lib/libtasn1.so.3", O_RDONLY) = 3
open("/usr/lib/libgcrypt.so.11", O_RDONLY) = 3
open("/usr/lib/libasound.so.2", O_RDONLY) = 3
open("/usr/lib/libdirectfb-1.2.so.9", O_RDONLY) = 3
open("/usr/lib/libfusion-1.2.so.9", O_RDONLY) = 3
open("/usr/lib/libdirect-1.2.so.9", O_RDONLY) = 3
open("/usr/lib/libvga.so.1", O_RDONLY) = 3
open("/usr/lib/libxcb.so.1", O_RDONLY) = 3
open("/usr/lib/libgpg-error.so.0", O_RDONLY) = 3
open("/lib/libx86.so.1", O_RDONLY) = 3
open("/usr/lib/libXau.so.6", O_RDONLY) = 3
open("/usr/lib/libXdmcp.so.6", O_RDONLY) = 3
open("/usr/lib/charset.alias", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/locale/locale.alias", O_RDONLY) = 3
open("/etc/kvm/qemu.conf", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/etc/kvm/target-x86_64.conf", O_RDONLY) = 3
open("/dev/kvm", O_RDWR|O_CLOEXEC) = 3
open("/proc/meminfo", O_RDONLY) = 9
open("/usr/share/qemu/bios.bin", O_RDONLY) = 10
open("/usr/share/qemu/bios.bin", O_RDONLY) = 10
open("vapic.bin", O_RDONLY) = -1 ENOENT (No such file or directory)
Could not open option rom 'vapic.bin': No such file or directory
open("/usr/share/qemu/vgabios-cirrus.bin", O_RDONLY) = 10
open("/usr/share/qemu/vgabios-cirrus.bin", O_RDONLY) = 10
open("/etc/localtime", O_RDONLY) = 10
open("pxe-rtl8139.rom", O_RDONLY) = -1 ENOENT (No such file or directory)
kvm: pci_add_option_rom: failed to find romfile "pxe-rtl8139.rom"
open("/etc/ld.so.cache", O_RDONLY) = 10
open("/usr/lib/libXext.so.6", O_RDONLY) = 10
open("/etc/ld.so.cache", O_RDONLY) = 10
open("/usr/lib/libXrender.so.1", O_RDONLY) = 10
open("/etc/ld.so.cache", O_RDONLY) = 10
open("/usr/lib/libXrandr.so.2", O_RDONLY) = 10
open("/var/run/gdm3/auth-for-XXXXXXXXXXXXXX-GKeRsp/database", O_RDONLY) = 11
open("/etc/ld.so.cache", O_RDONLY) = 10
open("/usr/lib/libXext.so.6", O_RDONLY) = 10
open("/etc/ld.so.cache", O_RDONLY) = 10
open("/usr/lib/libXrender.so.1", O_RDONLY) = 10
open("/etc/ld.so.cache", O_RDONLY) = 10
open("/usr/lib/libXrandr.so.2", O_RDONLY) = 10
open("/var/run/gdm3/auth-for-XXXXXXXXXXXXXX-GKeRsp/database", O_RDONLY) = 11
open("/var/run/gdm3/auth-for-XXXXXXXXXXXXXX-GKeRsp/database", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.alias", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.dir", O_RDONLY) = 12
open("/usr/share/X11/locale/C/XLC_LOCALE", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.alias", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.dir", O_RDONLY) = 12
open("/usr/share/X11/locale/C/XLC_LOCALE", O_RDONLY) = 12
open("/usr/lib/locale/locale-archive", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.alias", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.alias", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.dir", O_RDONLY) = 12
open("/usr/share/X11/locale/en_US.UTF-8/XLC_LOCALE", O_RDONLY) = 12
open("/usr/share/X11/locale/compose.dir", O_RDONLY) = 12
open("/usr/share/X11/locale/en_US.UTF-8/Compose", O_RDONLY) = 12
open("/root/.XCompose", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/usr/share/X11/locale/compose.dir", O_RDONLY) = 12
open("/usr/share/X11/locale/en_US.UTF-8/Compose", O_RDONLY) = 12
open("/usr/share/X11/XKeysymDB", O_RDONLY) = 13
open("/etc/ld.so.cache", O_RDONLY) = 12
open("/usr/lib/libXcursor.so.1", O_RDONLY) = 12
open("/usr/lib/libXfixes.so.3", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.alias", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.dir", O_RDONLY) = 12
open("/usr/share/X11/locale/C/XLC_LOCALE", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.alias", O_RDONLY) = 12
open("/usr/share/X11/locale/locale.dir", O_RDONLY) = 12
open("/usr/share/X11/locale/C/XLC_LOCALE", O_RDONLY) = 12
open("/root/.Xdefaults-XXXXXXXXXXXXXX", O_RDONLY) = -1 ENOENT (No such file or directory)
open("/proc/stat", O_RDONLY) = 12
open("/usr/lib/gconv/gconv-modules.cache", O_RDONLY) = 12
 
It seems that without qemu-system, VM wouldn't even start.
I had to install it back to be able to boot this VM.

It looks to me that SeaBIOS just can't see the disk...

I even tried to remove the VM and re-create it, but the issues stays the same, Virtio disks won't boot.
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!