Lines Matching refs:pgd
27 /* p4d is folded into pgd in case of 4-level page table */
36 /* pud is folded into pgd in case of 3-level page table */
347 static inline void set_pgd(pgd_t *pgdp, pgd_t pgd)
350 *pgdp = pgd;
352 set_p4d((p4d_t *)pgdp, (p4d_t){ pgd_val(pgd) });
355 static inline int pgd_none(pgd_t pgd)
358 return (pgd_val(pgd) == 0);
363 static inline int pgd_present(pgd_t pgd)
366 return (pgd_val(pgd) & _PAGE_PRESENT);
371 static inline int pgd_bad(pgd_t pgd)
374 return !pgd_present(pgd);
379 static inline void pgd_clear(pgd_t *pgd)
382 set_pgd(pgd, __pgd(0));
385 static inline p4d_t *pgd_pgtable(pgd_t pgd)
388 return (p4d_t *)pfn_to_virt(__page_val_to_pfn(pgd_val(pgd)));
390 return (p4d_t *)p4d_pgtable((p4d_t) { pgd_val(pgd) });
392 #define pgd_page_vaddr(pgd) ((unsigned long)pgd_pgtable(pgd))
394 static inline struct page *pgd_page(pgd_t pgd)
396 return pfn_to_page(__page_val_to_pfn(pgd_val(pgd)));
398 #define pgd_page(pgd) pgd_page(pgd)
403 static inline p4d_t *p4d_offset(pgd_t *pgd, unsigned long address)
406 return pgd_pgtable(*pgd) + p4d_index(address);
408 return (p4d_t *)pgd;