Lines Matching refs:pmd
65 #define pmd_phys(pmd) virt_to_phys((void *)pmd_val(pmd)) argument
67 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn() argument
69 return pmd_val(pmd) >> PFN_PTE_SHIFT; in pmd_pfn()
73 #define pmd_page(pmd) (pfn_to_page(pmd_phys(pmd) >> PAGE_SHIFT)) argument
76 #define pmd_page_vaddr(pmd) pmd_val(pmd) argument
413 static inline int pmd_write(pmd_t pmd) argument
415 return !!(pmd_val(pmd) & _PAGE_WRITE);
418 static inline struct page *pmd_page(pmd_t pmd) argument
420 if (pmd_val(pmd) & _PAGE_HUGE)
421 return pfn_to_page(pmd_pfn(pmd));
423 return pfn_to_page(pmd_phys(pmd) >> PAGE_SHIFT);
621 static inline int pmd_trans_huge(pmd_t pmd) argument
623 return !!(pmd_val(pmd) & _PAGE_HUGE);
626 static inline pmd_t pmd_mkhuge(pmd_t pmd) argument
628 pmd_val(pmd) |= _PAGE_HUGE;
630 return pmd;
634 pmd_t *pmdp, pmd_t pmd);
636 static inline pmd_t pmd_wrprotect(pmd_t pmd) argument
638 pmd_val(pmd) &= ~(_PAGE_WRITE | _PAGE_SILENT_WRITE);
639 return pmd;
642 static inline pmd_t pmd_mkwrite_novma(pmd_t pmd) argument
644 pmd_val(pmd) |= _PAGE_WRITE;
645 if (pmd_val(pmd) & _PAGE_MODIFIED)
646 pmd_val(pmd) |= _PAGE_SILENT_WRITE;
648 return pmd;
652 static inline int pmd_dirty(pmd_t pmd) argument
654 return !!(pmd_val(pmd) & _PAGE_MODIFIED);
657 static inline pmd_t pmd_mkclean(pmd_t pmd) argument
659 pmd_val(pmd) &= ~(_PAGE_MODIFIED | _PAGE_SILENT_WRITE);
660 return pmd;
663 static inline pmd_t pmd_mkdirty(pmd_t pmd) argument
665 pmd_val(pmd) |= _PAGE_MODIFIED | _PAGE_SOFT_DIRTY;
666 if (pmd_val(pmd) & _PAGE_WRITE)
667 pmd_val(pmd) |= _PAGE_SILENT_WRITE;
669 return pmd;
673 static inline int pmd_young(pmd_t pmd) argument
675 return !!(pmd_val(pmd) & _PAGE_ACCESSED);
678 static inline pmd_t pmd_mkold(pmd_t pmd) argument
680 pmd_val(pmd) &= ~(_PAGE_ACCESSED|_PAGE_SILENT_READ);
682 return pmd;
685 static inline pmd_t pmd_mkyoung(pmd_t pmd) argument
687 pmd_val(pmd) |= _PAGE_ACCESSED;
689 if (!(pmd_val(pmd) & _PAGE_NO_READ))
690 pmd_val(pmd) |= _PAGE_SILENT_READ;
692 return pmd;
696 static inline int pmd_soft_dirty(pmd_t pmd) argument
698 return !!(pmd_val(pmd) & _PAGE_SOFT_DIRTY);
701 static inline pmd_t pmd_mksoft_dirty(pmd_t pmd) argument
703 pmd_val(pmd) |= _PAGE_SOFT_DIRTY;
704 return pmd;
707 static inline pmd_t pmd_clear_soft_dirty(pmd_t pmd) argument
709 pmd_val(pmd) &= ~(_PAGE_SOFT_DIRTY);
710 return pmd;
715 static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot) argument
717 pmd_val(pmd) = (pmd_val(pmd) & (_PAGE_CHG_MASK | _PAGE_HUGE)) |
719 return pmd;
722 static inline pmd_t pmd_mkinvalid(pmd_t pmd) argument
724 pmd_val(pmd) &= ~(_PAGE_PRESENT | _PAGE_VALID | _PAGE_DIRTY);
726 return pmd;
747 #define pmd_leaf(pmd) ((pmd_val(pmd) & _PAGE_HUGE) != 0) argument