pmd_page
#define pmd_pgtable(pmd) ((pgtable_t) pmd_page(pmd))
#define pud_page(pud) pmd_page(__pmd(pud_val(pud)))
free_hotplug_page_range(pmd_page(pmd),
extern struct page *pmd_page(pmd_t pmd);
extern struct page *pmd_page(pmd_t pmd);
#define pmd_pfn(pmd) (page_to_pfn(pmd_page(pmd)))
free_vmemmap_pages(pmd_page(*pmd), altmap, get_order(PMD_SIZE));
free_vmemmap_pages(pmd_page(*pmd), altmap, get_order(PMD_SIZE));
return pmd_page(pmd) == virt_to_page(lm_alias(kasan_early_shadow_pte));
struct page *page = pmd_page(*pmd);
free_vmemmap_storage(pmd_page(pmd), PMD_SIZE, altmap);
struct page *pmd_page;
pmd_page = alloc_page(GFP_KERNEL);
if (!pmd_page)
pmdp_new = (pmd_t *)page_address(pmd_page);
set_pud(pudp, pfn_pud(page_to_pfn(pmd_page), PAGE_TABLE));
BUG_ON(pmd_page(*pmd) != pmd_page(*pmd_k));
static void ident_pmd_init(struct x86_mapping_info *info, pmd_t *pmd_page,
pmd_t *pmd = pmd_page + pmd_index(addr);
free_pagetable(pmd_page(*pmd), 0);
free_hugepage_table(pmd_page(*pmd),
free_hugepage_table(pmd_page(*pmd),
get_page_bootmem(section_nr, pmd_page(*pmd),
page = pmd_page(*pmd);
phys_pmd_init(pmd_t *pmd_page, unsigned long paddr, unsigned long paddr_end,
pmd_t *pmd = pmd_page + pmd_index(paddr);
list_add(&page_ptdesc(pmd_page(old_pmd))->pt_list, pgtables);
pt = page_ptdesc(pmd_page(pmd_sv[i]));
pt = page_ptdesc(pmd_page(*pmd));
(*func)(mm, pmd_page(pmd[i]), PT_PTE);
page = pmd_page(pmd);
#define pud_page(pud) (pmd_page((pmd_t){ pud }))
return ptlock_ptr(page_ptdesc(pmd_page(*pmd)));
((pte_t *)kmap_local_page(pmd_page(*(pmd))) + pte_index((address)))
#define pmd_pgtable(pmd) pmd_page(pmd)
#define pmd_folio(pmd) page_folio(pmd_page(pmd))
page = pmd_page(orig) + ((addr & ~PMD_MASK) >> PAGE_SHIFT);
page = pmd_page(pmdval);
src_page = pmd_page(pmd);
page = pmd_page(orig_pmd);
struct page *page = pmd_page(orig_pmd);
src_page = pmd_page(src_pmdval);
page = pmd_page(old_pmd);
page = pmd_page(old_pmd);
folio_remove_rmap_pmd(folio, pmd_page(orig_pmd), vma);
head = pmd_leaf(*pmd) ? pmd_page(*pmd) : NULL;
pte_free_kernel(&init_mm, (pte_t *)page_to_virt(pmd_page(*pmd)));
return pmd_page(pmd) == virt_to_page(lm_alias(kasan_early_shadow_pte));
if (pmd_page(val) == virt_to_page(lm_alias(kasan_early_shadow_pte)))
return pmd_page(*pmd) + ((addr & ~PMD_MASK) >> PAGE_SHIFT);