Lines Matching refs:pmdp
991 static inline void set_pmd(pmd_t *pmdp, pmd_t pmd) in set_pmd() argument
993 WRITE_ONCE(*pmdp, pmd); in set_pmd()
1019 static inline void pmd_clear(pmd_t *pmdp) in pmd_clear() argument
1021 set_pmd(pmdp, __pmd(_SEGMENT_ENTRY_EMPTY)); in pmd_clear()
1665 static inline void __pmdp_csp(pmd_t *pmdp) in __pmdp_csp() argument
1667 csp((unsigned int *)pmdp + 1, pmd_val(*pmdp), in __pmdp_csp()
1668 pmd_val(*pmdp) | _SEGMENT_ENTRY_INVALID); in __pmdp_csp()
1678 static __always_inline void __pmdp_idte(unsigned long addr, pmd_t *pmdp, in __pmdp_idte() argument
1684 sto = __pa(pmdp) - pmd_index(addr) * sizeof(pmd_t); in __pmdp_idte()
1689 : "+m" (*pmdp) in __pmdp_idte()
1697 : "+m" (*pmdp) in __pmdp_idte()
1738 void pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp,
1742 pgtable_t pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp);
1746 unsigned long addr, pmd_t *pmdp, in pmdp_set_access_flags() argument
1754 if (pmd_val(*pmdp) == pmd_val(entry)) in pmdp_set_access_flags()
1756 pmdp_xchg_direct(vma->vm_mm, addr, pmdp, entry); in pmdp_set_access_flags()
1762 unsigned long addr, pmd_t *pmdp) in pmdp_test_and_clear_young() argument
1764 pmd_t pmd = *pmdp; in pmdp_test_and_clear_young()
1766 pmd = pmdp_xchg_direct(vma->vm_mm, addr, pmdp, pmd_mkold(pmd)); in pmdp_test_and_clear_young()
1772 unsigned long addr, pmd_t *pmdp) in pmdp_clear_flush_young() argument
1775 return pmdp_test_and_clear_young(vma, addr, pmdp); in pmdp_clear_flush_young()
1779 pmd_t *pmdp, pmd_t entry) in set_pmd_at() argument
1783 set_pmd(pmdp, entry); in set_pmd_at()
1795 unsigned long addr, pmd_t *pmdp) in pmdp_huge_get_and_clear() argument
1797 return pmdp_xchg_direct(mm, addr, pmdp, __pmd(_SEGMENT_ENTRY_EMPTY)); in pmdp_huge_get_and_clear()
1803 pmd_t *pmdp, int full) in pmdp_huge_get_and_clear_full() argument
1806 pmd_t pmd = *pmdp; in pmdp_huge_get_and_clear_full()
1807 set_pmd(pmdp, __pmd(_SEGMENT_ENTRY_EMPTY)); in pmdp_huge_get_and_clear_full()
1810 return pmdp_xchg_lazy(vma->vm_mm, addr, pmdp, __pmd(_SEGMENT_ENTRY_EMPTY)); in pmdp_huge_get_and_clear_full()
1815 unsigned long addr, pmd_t *pmdp) in pmdp_huge_clear_flush() argument
1817 return pmdp_huge_get_and_clear(vma->vm_mm, addr, pmdp); in pmdp_huge_clear_flush()
1822 unsigned long addr, pmd_t *pmdp) in pmdp_invalidate() argument
1826 VM_WARN_ON_ONCE(!pmd_present(*pmdp)); in pmdp_invalidate()
1827 pmd = __pmd(pmd_val(*pmdp) | _SEGMENT_ENTRY_INVALID); in pmdp_invalidate()
1828 return pmdp_xchg_direct(vma->vm_mm, addr, pmdp, pmd); in pmdp_invalidate()
1833 unsigned long addr, pmd_t *pmdp) in pmdp_set_wrprotect() argument
1835 pmd_t pmd = *pmdp; in pmdp_set_wrprotect()
1838 pmd = pmdp_xchg_lazy(mm, addr, pmdp, pmd_wrprotect(pmd)); in pmdp_set_wrprotect()
1843 pmd_t *pmdp) in pmdp_collapse_flush() argument
1845 return pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp); in pmdp_collapse_flush()