[ipxe-devel] [PATCH 4/4] [virtio] Add virtio-net 1.0 support

Gerd Hoffmann kraxel at redhat.com
Fri Mar 11 14:14:13 UTC 2016


> Apologies for a naive question: since we need a 64-bit iPXE build for
> proper 64-bit BAR support, does it mean that we would have to ship two
> .rom files with QEMU, one for 32-bit guests and one for 64-bit guests?

No.  As I understand things the 64bit build ipxe build runs in long
mode.  That way it can reach 64bit bars _mapped_above_4G_ without

seabios will try to map all bars below 4G first, for compatibility with
32bit guests.  Only in case things don't fit seabios will map the 64bit
bars above 4G.

So, in a typical guest configuration the bars will be below 4G.

(for ovmf this is a moot point, both efi firmware and efi ipxe driver
run in long mode anyway).

> > Cc Gerd who worked on similar issues for virtio blk.

The virtio-blk/scsi driver in seabios uses mmio, and in the (unlikely)
case the bars are mapped above 4G seabios will access them using the
access window in pci config space.  seabios never switches to long mode.


More information about the ipxe-devel mailing list