On 28/05/19 22:48, Gerd Hoffmann wrote: > Original q35 behavior was to split memory 2.75 GB, leaving space for the > mmconfig bar at 0xb000000 and pci I/O window starting at 0xc0000000. > > Note: Those machine types have been removed from the qemu codebase > meanwhile because they could not be live-migrated so there was little > value in keeping them around. > > With the effort to allow for gigabyte-alignment of guest memory that > behavior was changed: The split was moved to 2G, but only in case the > memory didn't fit below 2.75 GB. > > So today the address space between 2G and 2,75G is not used for guest > memory in typical use cases, where the guest memory sized at a power of > two or a gigabyte number. But if you configure your guest with some odd > amout of memory (such as 2.5G) the address space is used.
Wasn't it done to ensure pre-PAE OSes could use as much memory as possible? (If you run pre-PAE OSes with more RAM than can fit below 4G, you can just reduce the amount of memory and get all the 2.75G). Paolo