[CentOS-virt] Problems with qemu-kvm and etherboot-roms-kvm

Fri Jan 16 22:35:15 UTC 2009
Michael Schenck <limeschenck at gmail.com>


I ran into an error attempting to offer two boot options using libvirt with
kvm.  I wanted the virtual to first attempt to boot from its "disk" and if
that didn't work, fall back on netboot (we kickstart install).  This
argument is "-boot cn".

If the disk you provide is of type IDE this will probably work for you,
unless you use "-drive" with the argument ",boot=on" as libvirt does by
default.  All drive types, other than IDE, can not be booted from without
the "boot=on" argument given to "-drive" which is why this is a standard
config in libvirt.

If you try this you will fail with "*Too many* option *ROMS*".  The reason
for this is, qemu only allows for 64kb of space for ROMs.  Most pxe boot
ROMs are 64kb, including the ones in etherboot-roms-kvm (found in
/usr/share/etherboot).  Because of this, qemu provides 32kb (found in
/usr/share/qemu) version of the PXE boot roms.

When booting kvm virtuals with qemu-kvm it looks for etherboot roms in
/usr/share/kvm/ which has symlinks pointing to /usr/share/etherboot/ and
seem to be placed their by the "kvm" rpm.

That being said, I'm tempted to just change the symlinks, however qemu does
not provide a PXE rom for e1000.

I have already reported this to the fedora community, and I'm told a
solution has been put in place.  I have yet to see the update show up in my
yum updates, but I'm confident one will be put in place as a lot of the
et.redhat.com projects use kvm.

In the mean time, any ideas?

Best Regards,
Michael Schenck
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.centos.org/pipermail/centos-virt/attachments/20090116/03d88aac/attachment-0005.html>