[SeaBIOS] [Qemu-devel] [RFC] map 64-bit PCI devices after all possible RAM
imammedo at redhat.com
Thu Oct 10 15:12:04 CEST 2013
On Thu, 10 Oct 2013 14:42:07 +0200
Gerd Hoffmann <kraxel at redhat.com> wrote:
> > > > I think the issue is with legacy guests.
> > > > E.g. if VCPU claims to support 50 bit of memory
> > > > do we put high PCI memory at 1 << 50?
> > > > If yes old guests which expect at most 40 bit
> > > > will not be able to use it.
> > >
> > > Hmm. Sure such guests exist?
> > I wouldn't be surprised. At least some windows
> > guests crash if you try to tell them your system
> > has too much physical memory (e.g. 2^48).
> Ok, so there is not really a way around making the location
> configurable. The size isn't needed, qemu can handle this on it's own.
> Guess we can just go with Igor's approach then. "etc/mem64-end" is a
> pretty bad name to say "please map 64bit pci bars here" though.
reasoning bind was to tell BIOS where RAM ends and let it decide what
to do with this information.
But we could do other way around and use "etc/pci-info" that was
proposed earlier by Michael, it is already committed into QEMU and
provides start/end of 32/64-bit PCI windows in QEMU view.
We could use pci-info.w64.start as base for 64-bit bars.
If it's good enough, I'll amend my patch to use it.
More information about the SeaBIOS