• J
    xen: add support for PAT · 41f2e477
    Jeremy Fitzhardinge 提交于
    Convert Linux PAT entries into Xen ones when constructing ptes.  Linux
    doesn't use _PAGE_PAT for ptes, so the only difference in the first 4
    entries is that Linux uses _PAGE_PWT for WC, whereas Xen (and default)
    use it for WT.
    
    xen_pte_val does the inverse conversion.
    
    We hard-code assumptions about Linux's current PAT layout, but a
    warning on the wrmsr to MSR_IA32_CR_PAT should point out any problems.
    If necessary we could go to a more general table-based conversion between
    Linux and Xen PAT entries.
    
    hugetlbfs poses a problem at the moment, the x86 architecture uses the
    same flag for _PAGE_PAT and _PAGE_PSE, which changes meaning depending
    on which pagetable level we're using.  At the moment this should be OK
    so long as nobody tries to do a pte_val on a hugetlbfs pte.
    Signed-off-by: NJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
    41f2e477
mmu.c 63.1 KB