Lines Matching full: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);
622 static inline int pmd_trans_huge(pmd_t pmd) argument
624 return !!(pmd_val(pmd) & _PAGE_HUGE);
627 static inline pmd_t pmd_mkhuge(pmd_t pmd) argument
629 pmd_val(pmd) |= _PAGE_HUGE;
631 return pmd;
635 pmd_t *pmdp, pmd_t pmd);
637 static inline pmd_t pmd_wrprotect(pmd_t pmd) argument
639 pmd_val(pmd) &= ~(_PAGE_WRITE | _PAGE_SILENT_WRITE);
640 return pmd;
643 static inline pmd_t pmd_mkwrite_novma(pmd_t pmd) argument
645 pmd_val(pmd) |= _PAGE_WRITE;
646 if (pmd_val(pmd) & _PAGE_MODIFIED)
647 pmd_val(pmd) |= _PAGE_SILENT_WRITE;
649 return pmd;
653 static inline int pmd_dirty(pmd_t pmd) argument
655 return !!(pmd_val(pmd) & _PAGE_MODIFIED);
658 static inline pmd_t pmd_mkclean(pmd_t pmd) argument
660 pmd_val(pmd) &= ~(_PAGE_MODIFIED | _PAGE_SILENT_WRITE);
661 return pmd;
664 static inline pmd_t pmd_mkdirty(pmd_t pmd) argument
666 pmd_val(pmd) |= _PAGE_MODIFIED | _PAGE_SOFT_DIRTY;
667 if (pmd_val(pmd) & _PAGE_WRITE)
668 pmd_val(pmd) |= _PAGE_SILENT_WRITE;
670 return pmd;
674 static inline int pmd_young(pmd_t pmd) argument
676 return !!(pmd_val(pmd) & _PAGE_ACCESSED);
679 static inline pmd_t pmd_mkold(pmd_t pmd) argument
681 pmd_val(pmd) &= ~(_PAGE_ACCESSED|_PAGE_SILENT_READ);
683 return pmd;
686 static inline pmd_t pmd_mkyoung(pmd_t pmd) argument
688 pmd_val(pmd) |= _PAGE_ACCESSED;
690 if (!(pmd_val(pmd) & _PAGE_NO_READ))
691 pmd_val(pmd) |= _PAGE_SILENT_READ;
693 return pmd;
697 static inline int pmd_soft_dirty(pmd_t pmd) argument
699 return !!(pmd_val(pmd) & _PAGE_SOFT_DIRTY);
702 static inline pmd_t pmd_mksoft_dirty(pmd_t pmd) argument
704 pmd_val(pmd) |= _PAGE_SOFT_DIRTY;
705 return pmd;
708 static inline pmd_t pmd_clear_soft_dirty(pmd_t pmd) argument
710 pmd_val(pmd) &= ~(_PAGE_SOFT_DIRTY);
711 return pmd;
716 static inline pmd_t pmd_modify(pmd_t pmd, pgprot_t newprot) argument
718 pmd_val(pmd) = (pmd_val(pmd) & (_PAGE_CHG_MASK | _PAGE_HUGE)) |
720 return pmd;
723 static inline pmd_t pmd_mkinvalid(pmd_t pmd) argument
725 pmd_val(pmd) &= ~(_PAGE_PRESENT | _PAGE_VALID | _PAGE_DIRTY);
727 return pmd;
748 #define pmd_leaf(pmd) ((pmd_val(pmd) & _PAGE_HUGE) != 0) argument