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

Re: [Xen-users] OVMF Network Boot

On Tue, Sep 08, 2015 at 03:35:54PM +0100, Ian Campbell wrote:
> On Tue, 2015-09-08 at 15:20 +0100, James Dingwall wrote:
> > Hi,
> > 
> > I'm volunteering some information about performing an EFI->iPXE->Ubuntu
> > 14.04 network boot in an hvm with bios = 
> > "ovmf".  I couldn't find much information about getting this working so
> > perhaps it could be useful for other 
> > people.  There are some manual steps required but I think a startup.nsh
> > script could solve those.
> > 
> > Existing problems with Xen/OVMF:
> >  * The emulated network card does not have an EFI compliant ROM.  (I tried 
> > passing romfile= to the qemu process 
> > but that didn't work so I believe in the same way that hvmloader copies the 
> > ovmf image to memory it would need 
> > to do the same for the option rom.)
> AFAIK the "ROMs deployed by hvmloader" mode only applies when rombios
> (together with qemu-trad) is in use.
> For qemu-upsteam + seabios it is certainly the case that seabios deploys
> the options ROMs out of the devices' ROM BARs (which is emulated by QEMU,
> and effectively contains romfile=).
> For qemu-upstream + ovmf I am reasonably sure it behaves like the seabios
> case not the rombios case and I am 100% sure that it _ought_ behave like
> the seabios case, so if it isn't then that is a bug.
> tools/firmware/hvmloader/ovmf.c has ".load_roms = 0" so I think that aspect
> is working as I expect. That's not to say there isn't something else wrong
> with OVMF deploying ROMs, just that it isn't the case that hvmloader is (or
> should be) doing it instead.

Hi Ian,

Your comments have prompted me to do a little bit more digging...  In the 
network booted Linux environment I can 
extract the rom from the network card and can show that the qemu romfile option 
is honoured.  What I have 
noticed though is that the option rom is disabled when executing lspci -v:

00:03.0 Ethernet controller: Intel Corporation 82540EM Gigabit Ethernet 
Controller (rev 03)
        Subsystem: Red Hat, Inc QEMU Virtual Machine
        Physical Slot: 3
        Flags: bus master, fast devsel, latency 0, IRQ 28
        Memory at f1000000 (32-bit, non-prefetchable) [size=128K]
        I/O ports at c000 [size=64]
        Expansion ROM at f1020000 [disabled] [size=128K]
        Kernel driver in use: e1000

Similarly in the ovmf shell pci 00 03 00 -i:
Expansion ROM Disabled(30)

Could this be that qemu (2.2 and 2.3 tested) does not set an appropriate bit in 
the network card's 


Xen-users mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.