• David Vrabel's avatar
    xen: release all pages within 1-1 p2m mappings · f3f436e3
    David Vrabel authored
    In xen_memory_setup() all reserved regions and gaps are set to an
    identity (1-1) p2m mapping.  If an available page has a PFN within one
    of these 1-1 mappings it will become inaccessible (as it MFN is lost)
    so release them before setting up the mapping.
    
    This can make an additional 256 MiB or more of RAM available
    (depending on the size of the reserved regions in the memory map) if
    the initial pages overlap with reserved regions.
    
    The 1:1 p2m mappings are also extended to cover partial pages.  This
    fixes an issue with (for example) systems with a BIOS that puts the
    DMI tables in a reserved region that begins on a non-page boundary.
    Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
    Signed-off-by: default avatarKonrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    f3f436e3
setup.c 10.8 KB