Lines Matching refs:pmd
22 * pte/pmd/pgd, it converts the passed pfn into an mfn. Conversely,
23 * when reading the content back with __(pgd|pmd|pte)_val, it converts
95 pmdval_t xen_pmd_val(pmd_t pmd);
100 pmd_t xen_make_pmd(pmdval_t pmd);
403 __visible pmdval_t xen_pmd_val(pmd_t pmd)
405 return pte_mfn_to_pfn(pmd.pmd);
441 __visible pmd_t xen_make_pmd(pmdval_t pmd)
443 pmd = pte_pfn_to_mfn(pmd);
444 return native_make_pmd(pmd);
553 static void xen_pmd_walk(struct mm_struct *mm, pmd_t *pmd,
562 if (!pmd_none(pmd[i]))
563 (*func)(mm, pmd_page(pmd[i]), PT_PTE);
576 pmd_t *pmd;
581 pmd = pmd_offset(&pud[i], 0);
583 (*func)(mm, virt_to_page(pmd), PT_PMD);
584 xen_pmd_walk(mm, pmd, func, last && i == nr - 1, limit);
1016 pmd_t *pmd = level2_kernel_pgt + pmd_index(vaddr);
1020 for (; vaddr <= vaddr_end && (pmd < (level2_kernel_pgt + PTRS_PER_PMD));
1021 pmd++, vaddr += PMD_SIZE) {
1022 if (pmd_none(*pmd))
1025 set_pmd(pmd, __pmd(0));
1056 static void __init xen_cleanmfnmap_pmd(pmd_t *pmd, bool unpin)
1062 if (pmd_leaf(*pmd)) {
1063 pa = pmd_val(*pmd) & PHYSICAL_PAGE_MASK;
1068 pte_tbl = pte_offset_kernel(pmd, 0);
1075 set_pmd(pmd, __pmd(0));
1490 /* Used for pmd and pud */
1851 pmd_t pmd;
1869 pmd = native_make_pmd(xen_read_phys_ulong(pa + pmd_index(vaddr) *
1870 sizeof(pmd)));
1871 if (!pmd_present(pmd))
1873 pa = pmd_val(pmd) & PTE_PFN_MASK;
1874 if (pmd_leaf(pmd))
1896 pmd_t *pmd;
1934 pmd = early_memremap(pmd_phys, PAGE_SIZE);
1935 clear_page(pmd);
1952 pmd[idx_pt] = __pmd(_PAGE_TABLE | pt_phys);
1956 early_memunmap(pmd, PAGE_SIZE);