From upstream: > On IA32 host or IA32 PAE host, at present, generally, we can't create an > HVM guest with more than 2G memory, because generally it's almost > impossible for Qemu to find a large enough and consecutive virtual > address space to map an HVM guest's whole physical address space. > The attached patch fixes this issue using dynamic mapping based on > little blocks of memory.
Upstream thread/patch is at http://lists.xensource.com/archives/html/xen-devel/2006-12/msg00128.html for now, we should document the 2G limit.
NB, the patch from that thread has other implications - it will expose a PAE bug in the HV shadow code which was not previously hit. See bug 218822
added to release notes (under "Virtualization"): <quote> At present, the Virtualization feature has the following limitations: * Virtualized kernels cannot support suspend / resume capabilities. * Hardware-virtualized guests cannot have more than 2GB of RAM. </quote> above note will be included in RC Release notes. kindly inform me if any revisions are in order. <making this bug block release notes, for tracking purposes>
2GB limit is believed to be x86 only; on x86_64, up to 4GB should work, and we are investigating raising those limits for future updates.
Closing out. Please ensure that a 5.1 bug is entered to track resolution of the original issue.
This request was evaluated by Red Hat Product Management for inclusion in a Red Hat Enterprise Linux maintenance release. Product Management has requested further review of this request by Red Hat Engineering, for potential inclusion in a Red Hat Enterprise Linux Update release for currently deployed products. This request is not yet committed for inclusion in an Update release.
This bug is not easily fixable and should probably be documentation only. The problem is that qemu-dm maps all of a guest domain's memory, so more than 2GB simply won't fit in a 32 bit host. A 64 bit host should be able to deal with larger 32bit HVM guests, this needs to be tested.
The patches we believe we need to resolve this bug are all brought in as part of the 3.1 hypervisor / qemu rebase. Switching this bug to MODIFIED, since QA has the only hardware with enough memory to really test this.
An advisory has been issued which should help the problem described in this bug report. This report is therefore being closed with a resolution of ERRATA. For more information on the solution and/or where to find the updated files, please follow the link below. You may reopen this bug report if the solution does not work for you. http://rhn.redhat.com/errata/RHEA-2007-0635.html
Release note added. If any revisions are required, please set the "requires_release_notes" flag to "?" and edit the "Release Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team.