• Juergen Gross's avatar
    xen: allocate page for shared info page from low memory · a5d5f328
    Juergen Gross authored
    In a HVM guest the kernel allocates the page for mapping the shared
    info structure via extend_brk() today. This will lead to a drop of
    performance as the underlying EPT entry will have to be split up into
    4kB entries as the single shared info page is located in hypervisor
    memory.
    
    The issue has been detected by using the libmicro munmap test:
    unmapping 8kB of memory was faster by nearly a factor of two when no
    pv interfaces were active in the HVM guest.
    
    So instead of taking a page from memory which might be mapped via
    large EPT entries use a page which is already mapped via a 4kB EPT
    entry: we can take a page from the first 1MB of memory as the video
    memory at 640kB disallows using larger EPT entries.
    Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
    Reviewed-by: default avatarBoris Ostrovsky <boris.ostrovsky@oracle.com>
    Signed-off-by: default avatarJuergen Gross <jgross@suse.com>
    a5d5f328
enlighten_pv.c 35.2 KB