/linux-4.1.27/arch/powerpc/include/asm/ |
H A D | pte-hash64-4k.h | 4 #define _PAGE_HASHPTE 0x0400 /* software: pte has an associated HPTE */ macro 12 #define _PAGE_HPTEFLAGS (_PAGE_BUSY | _PAGE_HASHPTE | \
|
H A D | pte-hash32.h | 20 #define _PAGE_HASHPTE 0x002 /* hash_page has made an HPTE for this pte */ macro 33 #define _PTE_NONE_MASK (0xffffffff00000000ULL | _PAGE_HASHPTE) 35 #define _PTE_NONE_MASK _PAGE_HASHPTE
|
H A D | pgtable.h | 123 * because a concurrent invalidation can clear _PAGE_HASHPTE. If it's a __set_pte_at() 128 *ptep = __pte((pte_val(*ptep) & _PAGE_HASHPTE) __set_pte_at() 129 | (pte_val(pte) & ~_PAGE_HASHPTE)); __set_pte_at() 131 pte_update(ptep, ~_PAGE_HASHPTE, pte_val(pte)); __set_pte_at() 143 *ptep = __pte((pte_val(*ptep) & _PAGE_HASHPTE) __set_pte_at() 144 | (pte_val(pte) & ~_PAGE_HASHPTE)); __set_pte_at() 147 #if _PAGE_HASHPTE != 0 __set_pte_at() 148 if (pte_val(*ptep) & _PAGE_HASHPTE) __set_pte_at() 160 * the _PAGE_HASHPTE bit since we may not have invalidated the previous __set_pte_at() 164 *ptep = __pte((pte_val(*ptep) & _PAGE_HASHPTE) __set_pte_at() 165 | (pte_val(pte) & ~_PAGE_HASHPTE)); __set_pte_at()
|
H A D | pte-hash64-64k.h | 10 /* For 64K page, we don't have a separate _PAGE_HASHPTE bit. Instead, 13 * is equivalent as effectively, the old _PAGE_HASHPTE was an OR of 22 #define _PAGE_HASHPTE _PAGE_HPTE_SUB macro 32 #define _PAGE_HPTEFLAGS (_PAGE_BUSY | _PAGE_HASHPTE | _PAGE_COMBO)
|
H A D | tlb.h | 44 if (pte_val(*ptep) & _PAGE_HASHPTE) __tlb_remove_tlb_entry()
|
H A D | pgtable-ppc32.h | 128 do { pte_update(ptep, ~_PAGE_HASHPTE, 0); } while (0) 255 #if _PAGE_HASHPTE != 0 __ptep_test_and_clear_young() 256 if (old & _PAGE_HASHPTE) { __ptep_test_and_clear_young() 270 return __pte(pte_update(ptep, ~_PAGE_HASHPTE, 0)); ptep_get_and_clear() 296 #define pte_same(A,B) (((pte_val(A) ^ pte_val(B)) & ~_PAGE_HASHPTE) == 0) 336 * must not include the _PAGE_PRESENT bit or the _PAGE_HASHPTE bit (if used).
|
H A D | pte-book3e.h | 57 #define _PAGE_HASHPTE 0 macro
|
H A D | pte-common.h | 7 #ifndef _PAGE_HASHPTE 8 #define _PAGE_HASHPTE 0 macro 63 #define _PAGE_HPTEFLAGS _PAGE_HASHPTE
|
H A D | pte-44x.h | 68 * _PAGE_HASHPTE (if HW has)
|
H A D | pgtable-ppc64.h | 248 if (old & _PAGE_HASHPTE) pte_update() 260 if ((pte_val(*ptep) & (_PAGE_ACCESSED | _PAGE_HASHPTE)) == 0) __ptep_test_and_clear_young() 555 if ((pmd_val(*pmdp) & (_PAGE_ACCESSED | _PAGE_HASHPTE)) == 0) __pmdp_test_and_clear_young()
|
/linux-4.1.27/arch/powerpc/mm/ |
H A D | hugetlbpage-hash64.c | 73 if (unlikely(old_pte & _PAGE_HASHPTE)) { __hash_page_huge() 88 if (likely(!(old_pte & _PAGE_HASHPTE))) { __hash_page_huge() 97 new_pte = (new_pte & ~_PAGE_HPTEFLAGS) | _PAGE_HASHPTE; __hash_page_huge()
|
H A D | hash_low_32.S | 103 ori r0,r0,_PAGE_ACCESSED|_PAGE_HASHPTE 109 * to update the PTE to set _PAGE_HASHPTE. -- paulus. 195 * _PAGE_HASHPTE bit to be a reliable indication of whether 227 * Fetch the linux pte and test and set _PAGE_HASHPTE atomically. 228 * If _PAGE_HASHPTE was already set, we don't replace the existing 239 andi. r0,r6,_PAGE_HASHPTE 250 ori r5,r6,_PAGE_HASHPTE 279 * linux PTE (before setting _PAGE_HASHPTE) and r7 contains the 284 * We assume that the caller has (or will) set the _PAGE_HASHPTE 286 * be the old linux PTE value; if it doesn't have _PAGE_HASHPTE set 348 * Test the _PAGE_HASHPTE bit in the old linux PTE, and skip the search 351 andi. r6,r6,_PAGE_HASHPTE 504 * the _PAGE_HASHPTE bit to be a reliable indication of 518 /* First find a PTE in the range that has _PAGE_HASHPTE set */ 526 andi. r0,r0,_PAGE_HASHPTE 565 * Check the _PAGE_HASHPTE bit in the linux PTE. If it is 573 andi. r0,r8,_PAGE_HASHPTE 621 andi. r0,r0,_PAGE_HASHPTE
|
H A D | hugepage-hash64.c | 95 if ((old_pmd & _PAGE_HASHPTE) && !(old_pmd & _PAGE_COMBO)) __hash_page_thp() 132 new_pmd |= _PAGE_HASHPTE; __hash_page_thp()
|
H A D | tlb_hash64.c | 220 if (!(pte & _PAGE_HASHPTE)) __flush_hash_table_range() 250 if (pteval & _PAGE_HASHPTE) flush_tlb_pmd_range()
|
H A D | tlb_hash32.c | 172 * and check _PAGE_HASHPTE bit; if it is set, find and destroy
|
H A D | hash_low_64.S | 99 ori r30,r30,_PAGE_BUSY | _PAGE_ACCESSED | _PAGE_HASHPTE 178 andi. r0,r31,_PAGE_HASHPTE 183 * add _PAGE_HASHPTE 188 ori r30,r30,_PAGE_HASHPTE 852 ori r30,r30,_PAGE_HASHPTE
|
H A D | pgtable_32.c | 303 BUG_ON((pte_val(*pg) & (_PAGE_PRESENT | _PAGE_HASHPTE)) && map_page()
|
H A D | pgtable_64.c | 552 if (old & _PAGE_HASHPTE) pmd_hugepage_update() 660 if (old & _PAGE_HASHPTE) pmdp_splitting_flush()
|
/linux-4.1.27/arch/microblaze/include/asm/ |
H A D | pgtable.h | 222 #ifndef _PAGE_HASHPTE pte_mkspecial() 223 #define _PAGE_HASHPTE 0 pte_mkspecial() macro 450 return __pte(pte_update(ptep, ~_PAGE_HASHPTE, 0)); ptep_get_and_clear() 465 /*#define pte_same(A,B) (((pte_val(A) ^ pte_val(B)) & ~_PAGE_HASHPTE) == 0)*/ 503 * must not include the _PAGE_PRESENT bit, or the _PAGE_HASHPTE bit
|