Lines Matching refs:pmdp
343 unsigned long addr, pmd_t *pmdp) in pmdp_idte_local() argument
346 __pmdp_idte(addr, pmdp, IDTE_NODAT | IDTE_GUEST_ASCE, in pmdp_idte_local()
349 __pmdp_idte(addr, pmdp, 0, 0, IDTE_LOCAL); in pmdp_idte_local()
355 unsigned long addr, pmd_t *pmdp) in pmdp_idte_global() argument
358 __pmdp_idte(addr, pmdp, IDTE_NODAT | IDTE_GUEST_ASCE, in pmdp_idte_global()
363 __pmdp_idte(addr, pmdp, 0, 0, IDTE_GLOBAL); in pmdp_idte_global()
367 __pmdp_csp(pmdp); in pmdp_idte_global()
374 unsigned long addr, pmd_t *pmdp) in pmdp_flush_direct() argument
378 old = *pmdp; in pmdp_flush_direct()
384 pmdp_idte_local(mm, addr, pmdp); in pmdp_flush_direct()
386 pmdp_idte_global(mm, addr, pmdp); in pmdp_flush_direct()
392 unsigned long addr, pmd_t *pmdp) in pmdp_flush_lazy() argument
396 old = *pmdp; in pmdp_flush_lazy()
402 pmd_val(*pmdp) |= _SEGMENT_ENTRY_INVALID; in pmdp_flush_lazy()
407 pmdp_idte_global(mm, addr, pmdp); in pmdp_flush_lazy()
434 pmd_t *pmdp, pmd_t new) in pmdp_xchg_direct() argument
439 old = pmdp_flush_direct(mm, addr, pmdp); in pmdp_xchg_direct()
440 *pmdp = new; in pmdp_xchg_direct()
447 pmd_t *pmdp, pmd_t new) in pmdp_xchg_lazy() argument
452 old = pmdp_flush_lazy(mm, addr, pmdp); in pmdp_xchg_lazy()
453 *pmdp = new; in pmdp_xchg_lazy()
517 void pgtable_trans_huge_deposit(struct mm_struct *mm, pmd_t *pmdp, in pgtable_trans_huge_deposit() argument
522 assert_spin_locked(pmd_lockptr(mm, pmdp)); in pgtable_trans_huge_deposit()
525 if (!pmd_huge_pte(mm, pmdp)) in pgtable_trans_huge_deposit()
528 list_add(lh, (struct list_head *) pmd_huge_pte(mm, pmdp)); in pgtable_trans_huge_deposit()
529 pmd_huge_pte(mm, pmdp) = pgtable; in pgtable_trans_huge_deposit()
532 pgtable_t pgtable_trans_huge_withdraw(struct mm_struct *mm, pmd_t *pmdp) in pgtable_trans_huge_withdraw() argument
538 assert_spin_locked(pmd_lockptr(mm, pmdp)); in pgtable_trans_huge_withdraw()
541 pgtable = pmd_huge_pte(mm, pmdp); in pgtable_trans_huge_withdraw()
544 pmd_huge_pte(mm, pmdp) = NULL; in pgtable_trans_huge_withdraw()
546 pmd_huge_pte(mm, pmdp) = (pgtable_t) lh->next; in pgtable_trans_huge_withdraw()
760 pmd_t *pmdp; in set_guest_storage_key() local
763 pmdp = pmd_alloc_map(mm, addr); in set_guest_storage_key()
764 if (unlikely(!pmdp)) in set_guest_storage_key()
767 ptl = pmd_lock(mm, pmdp); in set_guest_storage_key()
768 if (!pmd_present(*pmdp)) { in set_guest_storage_key()
773 if (pmd_large(*pmdp)) { in set_guest_storage_key()
774 paddr = pmd_val(*pmdp) & HPAGE_MASK; in set_guest_storage_key()
786 ptep = pte_alloc_map_lock(mm, pmdp, addr, &ptl); in set_guest_storage_key()
862 pmd_t *pmdp; in reset_guest_reference_bit() local
866 pmdp = pmd_alloc_map(mm, addr); in reset_guest_reference_bit()
867 if (unlikely(!pmdp)) in reset_guest_reference_bit()
870 ptl = pmd_lock(mm, pmdp); in reset_guest_reference_bit()
871 if (!pmd_present(*pmdp)) { in reset_guest_reference_bit()
876 if (pmd_large(*pmdp)) { in reset_guest_reference_bit()
877 paddr = pmd_val(*pmdp) & HPAGE_MASK; in reset_guest_reference_bit()
885 ptep = pte_alloc_map_lock(mm, pmdp, addr, &ptl); in reset_guest_reference_bit()
917 pmd_t *pmdp; in get_guest_storage_key() local
920 pmdp = pmd_alloc_map(mm, addr); in get_guest_storage_key()
921 if (unlikely(!pmdp)) in get_guest_storage_key()
924 ptl = pmd_lock(mm, pmdp); in get_guest_storage_key()
925 if (!pmd_present(*pmdp)) { in get_guest_storage_key()
932 if (pmd_large(*pmdp)) { in get_guest_storage_key()
933 paddr = pmd_val(*pmdp) & HPAGE_MASK; in get_guest_storage_key()
941 ptep = pte_alloc_map_lock(mm, pmdp, addr, &ptl); in get_guest_storage_key()