• Juergen Gross's avatar
    xen: move p2m list if conflicting with e820 map · 70e61199
    Juergen Gross authored
    Check whether the hypervisor supplied p2m list is placed at a location
    which is conflicting with the target E820 map. If this is the case
    relocate it to a new area unused up to now and compliant to the E820
    map.
    
    As the p2m list might by huge (up to several GB) and is required to be
    mapped virtually, set up a temporary mapping for the copied list.
    
    For pvh domains just delete the p2m related information from start
    info instead of reserving the p2m memory, as we don't need it at all.
    
    For 32 bit kernels adjust the memblock_reserve() parameters in order
    to cover the page tables only. This requires to memblock_reserve() the
    start_info page on it's own.
    Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
    Acked-by: default avatarKonrad Rzeszutek Wilk <Konrad.wilk@oracle.com>
    Signed-off-by: default avatarDavid Vrabel <david.vrabel@citrix.com>
    70e61199
mmu.c 74.7 KB