[gPXE] Boot ordering problem with qemu-kvm / seabios / gPXE

Romain Vrignaud romain at yakaz.com
Thu Sep 29 05:33:52 EDT 2011


Hello everybody.

I'm actualy experiencing some problem for ordering my VM boot with qemu-kvm
/ Seabios and gPXE.
I use libvirt's per-device boot option which launch my VM with this options
:

You can find libvirt's xml there :  http://pastebin.com/bqizkLiZ
--
/usr/bin/kvm -S -M pc-0.14 -enable-kvm -m 2048 -smp
1,maxcpus=3,sockets=3,cores=1,threads=1 -name vm-name
-uuid 32b5bf0d-fe46-2edb-b0d9-c134ba8a7636
-nodefconfig
-nodefaults
-chardev
socket,id=charmonitor,path=/var/lib/libvirt/qemu/vm-name.monitor,server,nowait
-mon chardev=charmonitor,id=monitor,mode=control
-rtc base=utc -drive
file=/var/lib/libvirt/images/ploop2.img,if=none,id=drive-virtio-disk0,format=raw
-device
virtio-blk-pci,bus=pci.0,addr=0x5,drive=drive-virtio-disk0,id=virtio-disk0
-drive
file=/var/lib/libvirt/images/vm-name.img,if=none,id=drive-virtio-disk1,format=raw
-device
virtio-blk-pci,bus=pci.0,addr=0x6,drive=drive-virtio-disk1,id=virtio-disk1
-netdev tap,fd=23,id=hostnet0
-device
rtl8139,netdev=hostnet0,id=net0,mac=52:54:00:28:ca:e5,bus=pci.0,addr=0x3,bootindex=2
-netdev tap,fd=24,id=hostnet1
-device
rtl8139,netdev=hostnet1,id=net1,mac=52:54:00:28:ca:e6,bus=pci.0,addr=0x4,bootindex=1
-chardev pty,id=charserial0 -device
isa-serial,chardev=charserial0,id=serial0
-usb -vnc 127.0.0.1:1
-k en-us -vga cirrus
-device virtio-balloon-pci,id=balloon0,bus=pci.0,addr=0x7

--

We see the right bootindex option as I want to boot on gPXE from my second
NIC (mac=52:54:00:28:ca:e6).
The problem is that during my VM boot process, seabios initialise gPXE for
my 2 NIC.
But then gPXE try to boot (DHCP request) on the first NIC rather than on the
second one.

It always try to boot first on the first PCI device (00:03.0 instead of
00:04.0).

I don't really know if the problem comes from gPXE or Seabios but I have
exactly the same problem when I try with Ubuntu's etherboot rom.


I got this problem with Ubuntu latest qemu-kvm
(0.14.1+noroms-0ubuntu3.11.04.1) / seabios (0.6.2-0ubuntu1) and etherboot
(5.4.4-7ubuntu2) and Fedora qemu-kvm (qemu-kvm-0.15.0-4.fc15.x86_64) /
Seabios (seabios-bin-0.6.2-2.fc15.noarch)  and gPXE
(gpxe-roms-qemu-1.0.1-4.fc15.noarch).

I also recompiled latest Seabios (pre-0.6.3-20110929) trunk and gPXE
(1.0.1+) from Git : the behaviour is exactly the same. I tried with
different NIC driver (virtio and rtl8139) with also same behavior.

Do you have any idea where my problem can come from ?

Thanks in advance for any advice.

Regards,

Romain Vrignaud
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://etherboot.org/pipermail/gpxe/attachments/20110929/8cd432ac/attachment.html>


More information about the gPXE mailing list