[gPXE] [PATCH] [pciextra] Restore the PCI COMMAND register after writing to the BARs

Bernhard Kohl bernhard.kohl at nsn.com
Tue Feb 9 12:30:44 EST 2010


Am 30.01.2010 16:06, schrieb ext Stefan Hajnoczi:
>
> Two tests that can help us figure out what is going on:
>
> 1. Build gPXE with direct PCI support.  Normally gPXE uses the PCI
> BIOS interface instead of directly accessing PCI config space.
> Perhaps this is having a side-effect during BAR sizing.  Please try
> changing src/config/defaults/pcbios.h "#define PCIAPI_PCBIOS" to
> "#define PCIAPI_DIRECT" and rebuild gPXE.
>
I tried both the older qemu-kvm Bochs BIOS and the latest SeaBIOS.
For both the error occurred with PCIAPI_PCBIOS and worked well with
PCIAPI_DIRECT.

> 2. Trying gPXE on the physical machine will eliminate KVM from the
> equation.  If it works outside KVM then we know where to look for the
> problem.
>
> Stefan
>
I could not make it booting from the physical machine. It is an
HP ProLiant BL460c-G6 Blade. After printing the following 3 lines
it stops and reboots after 5 seconds. The same gpxe.iso image
boots in a qemu-kvm VM without problems. But I think this
test is not really necessary as the problem is related to the QEMU BIOS.

ISOLINUX 3.75 2009-04-16 ETCD Copyright (C) 1994-2009 H. Peter Anvin et al
Etherboot ISO boot image generated by geniso
Loading gpxe.krn.....ready.

Bernhard


More information about the gPXE mailing list