Lines Matching full:pmd
216 static inline int pmd_present(pmd_t pmd) in pmd_present() argument
224 return (pmd_val(pmd) & (_PAGE_PRESENT | _PAGE_PROT_NONE | _PAGE_LEAF)); in pmd_present()
227 static inline int pmd_present(pmd_t pmd) in pmd_present() argument
229 return (pmd_val(pmd) & (_PAGE_PRESENT | _PAGE_PROT_NONE)); in pmd_present()
233 static inline int pmd_none(pmd_t pmd) in pmd_none() argument
235 return (pmd_val(pmd) == 0); in pmd_none()
238 static inline int pmd_bad(pmd_t pmd) in pmd_bad() argument
240 return !pmd_present(pmd) || (pmd_val(pmd) & _PAGE_LEAF); in pmd_bad()
244 static inline int pmd_leaf(pmd_t pmd) in pmd_leaf() argument
246 return pmd_present(pmd) && (pmd_val(pmd) & _PAGE_LEAF); in pmd_leaf()
249 static inline void set_pmd(pmd_t *pmdp, pmd_t pmd) in set_pmd() argument
251 *pmdp = pmd; in set_pmd()
273 static inline struct page *pmd_page(pmd_t pmd) in pmd_page() argument
275 return pfn_to_page(__page_val_to_pfn(pmd_val(pmd))); in pmd_page()
278 static inline unsigned long pmd_page_vaddr(pmd_t pmd) in pmd_page_vaddr() argument
280 return (unsigned long)pfn_to_virt(__page_val_to_pfn(pmd_val(pmd))); in pmd_page_vaddr()
283 static inline pte_t pmd_pte(pmd_t pmd) in pmd_pte() argument
285 return __pte(pmd_val(pmd)); in pmd_pte()
454 static inline int pmd_protnone(pmd_t pmd) in pmd_protnone() argument
456 return pte_protnone(pmd_pte(pmd)); in pmd_protnone()
644 static inline pmd_t pmd_mkhuge(pmd_t pmd) in pmd_mkhuge() argument
646 return pmd; in pmd_mkhuge()
649 static inline pmd_t pmd_mkinvalid(pmd_t pmd) in pmd_mkinvalid() argument
651 return __pmd(pmd_val(pmd) & ~(_PAGE_PRESENT|_PAGE_PROT_NONE)); in pmd_mkinvalid()
654 #define __pmd_to_phys(pmd) (__page_val_to_pfn(pmd_val(pmd)) << PAGE_SHIFT) argument
656 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn() argument
658 return ((__pmd_to_phys(pmd) & PMD_MASK) >> PAGE_SHIFT); in pmd_pfn()
668 static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot) in pmd_modify() argument
670 return pte_pmd(pte_modify(pmd_pte(pmd), newprot)); in pmd_modify()
674 static inline int pmd_write(pmd_t pmd) in pmd_write() argument
676 return pte_write(pmd_pte(pmd)); in pmd_write()
679 static inline int pmd_dirty(pmd_t pmd) in pmd_dirty() argument
681 return pte_dirty(pmd_pte(pmd)); in pmd_dirty()
685 static inline int pmd_young(pmd_t pmd) in pmd_young() argument
687 return pte_young(pmd_pte(pmd)); in pmd_young()
690 static inline int pmd_user(pmd_t pmd) in pmd_user() argument
692 return pte_user(pmd_pte(pmd)); in pmd_user()
695 static inline pmd_t pmd_mkold(pmd_t pmd) in pmd_mkold() argument
697 return pte_pmd(pte_mkold(pmd_pte(pmd))); in pmd_mkold()
700 static inline pmd_t pmd_mkyoung(pmd_t pmd) in pmd_mkyoung() argument
702 return pte_pmd(pte_mkyoung(pmd_pte(pmd))); in pmd_mkyoung()
705 static inline pmd_t pmd_mkwrite_novma(pmd_t pmd) in pmd_mkwrite_novma() argument
707 return pte_pmd(pte_mkwrite_novma(pmd_pte(pmd))); in pmd_mkwrite_novma()
710 static inline pmd_t pmd_wrprotect(pmd_t pmd) in pmd_wrprotect() argument
712 return pte_pmd(pte_wrprotect(pmd_pte(pmd))); in pmd_wrprotect()
715 static inline pmd_t pmd_mkclean(pmd_t pmd) in pmd_mkclean() argument
717 return pte_pmd(pte_mkclean(pmd_pte(pmd))); in pmd_mkclean()
720 static inline pmd_t pmd_mkdirty(pmd_t pmd) in pmd_mkdirty() argument
722 return pte_pmd(pte_mkdirty(pmd_pte(pmd))); in pmd_mkdirty()
726 pmd_t *pmdp, pmd_t pmd) in set_pmd_at() argument
728 page_table_check_pmd_set(mm, pmdp, pmd); in set_pmd_at()
729 return __set_pte_at((pte_t *)pmdp, pmd_pte(pmd)); in set_pmd_at()
745 static inline bool pmd_user_accessible_page(pmd_t pmd) in pmd_user_accessible_page() argument
747 return pmd_leaf(pmd) && pmd_user(pmd); in pmd_user_accessible_page()
757 static inline int pmd_trans_huge(pmd_t pmd) in pmd_trans_huge() argument
759 return pmd_leaf(pmd); in pmd_trans_huge()
781 pmd_t pmd = __pmd(atomic_long_xchg((atomic_long_t *)pmdp, 0)); in pmdp_huge_get_and_clear() local
783 page_table_check_pmd_clear(mm, pmd); in pmdp_huge_get_and_clear()
785 return pmd; in pmdp_huge_get_and_clear()
797 unsigned long address, pmd_t *pmdp, pmd_t pmd) in pmdp_establish()
799 page_table_check_pmd_set(vma->vm_mm, pmdp, pmd); in pmdp_establish()
800 return __pmd(atomic_long_xchg((atomic_long_t *)pmdp, pmd_val(pmd))); in pmdp_establish()
853 #define __pmd_to_swp_entry(pmd) ((swp_entry_t) { pmd_val(pmd) }) argument