pgd_t xen_make_pgd(unsigned long pgd) { if (pgd & _PAGE_PRESENT) pgd = phys_to_machine(XPADDR(pgd)).maddr; return (pgd_t){ pgd }; }
pmd_t xen_make_pmd(unsigned long long pmd) { if (pmd & 1) pmd = phys_to_machine(XPADDR(pmd)).maddr; return (pmd_t){ pmd }; }
pte_t xen_make_pte(unsigned long pte) { if (pte & _PAGE_PRESENT) pte = phys_to_machine(XPADDR(pte)).maddr; return (pte_t){ pte }; }
pte_t xen_make_pte(unsigned long long pte) { if (pte & 1) pte = phys_to_machine(XPADDR(pte)).maddr; return (pte_t){ pte, pte >> 32 }; }
static dma_addr_t xen_phys_to_bus(phys_addr_t paddr) { return phys_to_machine(XPADDR(paddr)).maddr; }