Searched refs:pmd (Results 76 - 100 of 300) sorted by relevance

1234567891011>>

/linux-master/arch/s390/include/asm/
H A Dpgtable.h72 pr_err("%s:%d: bad pmd %016lx.\n", __FILE__, __LINE__, pmd_val(e))
548 static inline pmd_t clear_pmd_bit(pmd_t pmd, pgprot_t prot) argument
550 return __pmd(pmd_val(pmd) & ~pgprot_val(prot));
553 static inline pmd_t set_pmd_bit(pmd_t pmd, pgprot_t prot) argument
555 return __pmd(pmd_val(pmd) | pgprot_val(prot));
626 * pgd/p4d/pud/pmd/pte query functions
717 static inline bool pmd_leaf(pmd_t pmd) argument
719 return (pmd_val(pmd) & _SEGMENT_ENTRY_LARGE) != 0;
722 static inline int pmd_bad(pmd_t pmd) argument
724 if ((pmd_val(pmd)
751 pmd_present(pmd_t pmd) argument
756 pmd_none(pmd_t pmd) argument
762 pmd_write(pmd_t pmd) argument
774 pmd_dirty(pmd_t pmd) argument
780 pmd_young(pmd_t pmd) argument
821 pmd_protnone(pmd_t pmd) argument
861 pmd_soft_dirty(pmd_t pmd) argument
866 pmd_mksoft_dirty(pmd_t pmd) argument
871 pmd_clear_soft_dirty(pmd_t pmd) argument
939 set_pmd(pmd_t *pmdp, pmd_t pmd) argument
1383 pmd_deref(pmd_t pmd) argument
1393 pmd_pfn(pmd_t pmd) argument
1479 pmd_page_vaddr(pmd_t pmd) argument
1499 pmd_wrprotect(pmd_t pmd) argument
1505 pmd_mkwrite_novma(pmd_t pmd) argument
1513 pmd_mkclean(pmd_t pmd) argument
1519 pmd_mkdirty(pmd_t pmd) argument
1573 pmd_mkyoung(pmd_t pmd) argument
1581 pmd_mkold(pmd_t pmd) argument
1587 pmd_modify(pmd_t pmd, pgprot_t newprot) argument
1711 pmd_t pmd = *pmdp; local
1733 pmd_mkhuge(pmd_t pmd) argument
1753 pmd_t pmd = *pmdp; local
1771 pmd_t pmd = __pmd(pmd_val(*pmdp) | _SEGMENT_ENTRY_INVALID); local
1780 pmd_t pmd = *pmdp; local
1797 pmd_trans_huge(pmd_t pmd) argument
[all...]
H A Dpgalloc.h95 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) argument
99 pagetable_pmd_dtor(virt_to_ptdesc(pmd));
100 crst_table_free(mm, (unsigned long *) pmd);
113 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) argument
115 set_pud(pud, __pud(_REGION3_ENTRY | __pa(pmd)));
129 pmd_t *pmd, pgtable_t pte)
131 set_pmd(pmd, __pmd(_SEGMENT_ENTRY | __pa(pte)));
134 #define pmd_populate_kernel(mm, pmd, pte) pmd_populate(mm, pmd, pte)
128 pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t pte) argument
/linux-master/arch/xtensa/include/asm/
H A Dpgtable.h226 * The pmd contains the kernel virtual address of the pte page.
228 #define pmd_page_vaddr(pmd) ((unsigned long)(pmd_val(pmd) & PAGE_MASK))
229 #define pmd_pfn(pmd) (__pa(pmd_val(pmd)) >> PAGE_SHIFT)
230 #define pmd_page(pmd) virt_to_page(pmd_val(pmd))
246 #define pmd_none(pmd) (!pmd_val(pmd))
247 #define pmd_present(pmd) (pmd_va
[all...]
/linux-master/arch/parisc/mm/
H A Dhugetlbpage.c53 pmd_t *pmd; local
67 pmd = pmd_alloc(mm, pud, addr);
68 if (pmd)
69 pte = pte_alloc_huge(mm, pmd, addr);
80 pmd_t *pmd; local
91 pmd = pmd_offset(pud, addr);
92 if (!pmd_none(*pmd))
93 pte = pte_offset_huge(pmd, addr);
185 int pmd_huge(pmd_t pmd) argument
H A Dfixmap.c19 pmd_t *pmd = pmd_offset(pud, vaddr); local
22 pte = pte_offset_kernel(pmd, vaddr);
/linux-master/arch/loongarch/mm/
H A Dinit.c130 void __meminit vmemmap_set_pmd(pmd_t *pmd, void *p, int node, argument
137 set_pmd_at(&init_mm, addr, pmd, entry);
140 int __meminit vmemmap_check_pmd(pmd_t *pmd, int node, argument
143 int huge = pmd_val(*pmd) & _PAGE_HUGE;
146 vmemmap_verify((pte_t *)pmd, node, addr, next);
173 pmd_t *pmd; local
187 pmd = memblock_alloc(PAGE_SIZE, PAGE_SIZE);
188 if (!pmd)
190 pud_populate(&init_mm, pud, pmd);
192 pmd_init(pmd);
[all...]
/linux-master/arch/x86/mm/
H A Dinit_64.c75 DEFINE_POPULATE(pud_populate, pud, pmd, init)
76 DEFINE_POPULATE(pmd_populate_kernel, pmd, pte, init)
90 DEFINE_ENTRY(pmd, pmd, init)
276 pmd_t *pmd = (pmd_t *) spp_getpage(); local
277 pud_populate(&init_mm, pud, pmd);
278 if (pmd != pmd_offset(pud, 0))
280 pmd, pmd_offset(pud, 0));
285 static pte_t *fill_pte(pmd_t *pmd, unsigned long vaddr) argument
287 if (pmd_none(*pmd)) {
298 pmd_t *pmd = fill_pmd(pud, vaddr); local
357 pmd_t *pmd; local
372 pmd_t *pmd; local
431 pmd_t *pmd = level2_kernel_pgt; local
517 pmd_t *pmd = pmd_page + pmd_index(paddr); local
602 pmd_t *pmd; local
1005 free_pte_table(pte_t *pte_start, pmd_t *pmd) argument
1025 pmd_t *pmd; local
1108 pmd_t *pmd; local
1493 vmemmap_set_pmd(pmd_t *pmd, void *p, int node, unsigned long addr, unsigned long next) argument
1520 vmemmap_check_pmd(pmd_t *pmd, int node, unsigned long addr, unsigned long next) argument
1566 pmd_t *pmd; local
[all...]
H A Dinit_32.c95 static pte_t * __init one_page_table_init(pmd_t *pmd) argument
97 if (!(pmd_val(*pmd) & _PAGE_PRESENT)) {
100 set_pmd(pmd, __pmd(__pa(page_table) | _PAGE_TABLE));
101 BUG_ON(page_table != pte_offset_kernel(pmd, 0));
104 return pte_offset_kernel(pmd, 0);
118 pmd_t *pmd; local
120 pmd = populate_extra_pmd(vaddr);
121 return one_page_table_init(pmd) + pte_idx;
155 static pte_t *__init page_table_kmap_check(pte_t *pte, pmd_t *pmd, argument
181 set_pmd(pmd, __pm
209 pmd_t *pmd; local
261 pmd_t *pmd; local
441 pmd_t *pmd; local
[all...]
H A Dpgtable_32.c32 pmd_t *pmd; local
50 pmd = pmd_offset(pud, vaddr);
51 if (pmd_none(*pmd)) {
55 pte = pte_offset_kernel(pmd, vaddr);
H A Dpti.c247 pmd_t *pmd; local
250 pmd = pti_user_pagetable_walk_pmd(address);
251 if (!pmd)
255 if (pmd_leaf(*pmd)) {
260 if (pmd_none(*pmd)) {
265 set_pmd(pmd, __pmd(_KERNPG_TABLE | __pa(new_pte_page)));
268 pte = pte_offset_kernel(pmd, address);
314 pmd_t *pmd, *target_pmd; local
337 pmd = pmd_offset(pud, addr);
338 if (pmd_none(*pmd)) {
[all...]
/linux-master/arch/sparc/include/asm/
H A Dpgtable_32.h109 static inline unsigned long pmd_pfn(pmd_t pmd) argument
111 return (pmd_val(pmd) & SRMMU_PTD_PMASK) >> (PAGE_SHIFT-4);
114 static inline struct page *pmd_page(pmd_t pmd) argument
116 if (srmmu_device_memory(pmd_val(pmd)))
118 return pfn_to_page(pmd_pfn(pmd));
121 static inline unsigned long __pmd_page(pmd_t pmd) argument
125 if (srmmu_device_memory(pmd_val(pmd)))
128 v = pmd_val(pmd) & SRMMU_PTD_PMASK;
132 static inline unsigned long pmd_page_vaddr(pmd_t pmd) argument
134 unsigned long v = pmd_val(pmd)
168 pmd_bad(pmd_t pmd) argument
173 pmd_present(pmd_t pmd) argument
178 pmd_none(pmd_t pmd) argument
[all...]
H A Dpgalloc_64.h36 static inline void __pud_populate(pud_t *pud, pmd_t *pmd) argument
38 pud_set(pud, pmd);
58 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) argument
60 kmem_cache_free(pgtable_cache, pmd);
112 #define __pmd_free_tlb(tlb, pmd, addr) \
113 pgtable_free_tlb(tlb, pmd, false)
/linux-master/arch/powerpc/mm/
H A Dpgtable_64.c123 * For hugepage we have pfn in the pmd, we use PTE_RPN_SHIFT bits for flags
126 struct page *pmd_page(pmd_t pmd) argument
128 if (pmd_leaf(pmd)) {
135 VM_WARN_ON(!(pmd_leaf(pmd) || pmd_huge(pmd)));
136 return pte_page(pmd_pte(pmd));
138 return virt_to_page(pmd_page_vaddr(pmd));
H A Dpgtable.c303 pmd_t *pmd = pmd_off(mm, addr); local
318 num = number_of_cells_per_pte(pmd, val, 1);
332 pmd_t *pmd; local
344 pmd = pmd_offset(pud, addr);
347 * pmd to none to force page fault/gup to take mmap_lock. After
348 * pmd is set to none, we do a pte_clear which does this assertion
349 * so if we find pmd none, return.
351 if (pmd_none(*pmd))
353 pte = pte_offset_map_nolock(mm, pmd, addr, &ptl);
387 pmd_t pmd, *pmd local
[all...]
/linux-master/mm/
H A Dpgtable-generic.c48 * Note that the pmd variant below can't be stub'ed out just as for p4d/pud
49 * above. pmd folding is special and typically pmd_* macros refer to upper
52 void pmd_clear_bad(pmd_t *pmd) argument
54 pmd_ERROR(*pmd);
55 pmd_clear(pmd);
140 pmd_t pmd; local
144 pmd = pmdp_huge_get_and_clear(vma->vm_mm, address, pmdp);
146 return pmd;
220 * pmd and hugepage pte format are same. So we could
223 pmd_t pmd; local
280 __pte_offset_map(pmd_t *pmd, unsigned long addr, pmd_t *pmdvalp) argument
306 pte_offset_map_nolock(struct mm_struct *mm, pmd_t *pmd, unsigned long addr, spinlock_t **ptlp) argument
362 __pte_offset_map_lock(struct mm_struct *mm, pmd_t *pmd, unsigned long addr, spinlock_t **ptlp) argument
[all...]
/linux-master/arch/m68k/include/asm/
H A Dmotorola_pgtable.h82 #define pmd_pgtable(pmd) ((pgtable_t)pmd_page_vaddr(pmd))
107 #define pmd_page_vaddr(pmd) ((unsigned long)__va(pmd_val(pmd) & _TABLE_MASK))
120 #define pmd_none(pmd) (!pmd_val(pmd))
121 #define pmd_bad(pmd) ((pmd_val(pmd) & _DESCTYPE_MASK) != _PAGE_TABLE)
122 #define pmd_present(pmd) (pmd_val(pmd)
[all...]
H A Dpage.h21 typedef struct { unsigned long pmd; } pmd_t; member in struct:__anon18
22 #define pmd_val(x) ((&x)->pmd)
/linux-master/arch/x86/kernel/
H A Dhead64.c94 static unsigned long __head sme_postprocess_startup(struct boot_params *bp, pmdval_t *pmd) argument
126 pmd[i] -= sme_get_me_mask();
152 pmdval_t *pmd, pmd_entry; local
192 RIP_REL_REF(level2_fixmap_pgt)[i].pmd += load_delta;
201 pud = &early_pgts[0]->pmd;
202 pmd = &early_pgts[1]->pmd;
208 p4d = &early_pgts[RIP_REL_REF(next_early_pgt)++]->pmd;
224 pud[(i + 0) % PTRS_PER_PUD] = (pudval_t)pmd + pgtable_flags;
225 pud[(i + 1) % PTRS_PER_PUD] = (pudval_t)pmd
282 __early_make_pgtable(unsigned long address, pmdval_t pmd) argument
355 pmdval_t pmd; local
[all...]
/linux-master/arch/arm/include/asm/
H A Dpgtable-2level-types.h22 typedef struct { pmdval_t pmd; } pmd_t; member in struct:__anon43
27 #define pmd_val(x) ((x).pmd)
/linux-master/arch/arm/mm/
H A Dpgd.c147 pmd_t *pmd; local
165 pmd = pmd_offset(pud, 0);
166 if (pmd_none_or_clear_bad(pmd))
169 pte = pmd_pgtable(*pmd);
170 pmd_clear(pmd);
175 pmd_free(mm, pmd);
186 * Free modules/pkmap or identity pmd tables.
199 pmd = pmd_offset(pud, 0);
201 pmd_free(mm, pmd);
/linux-master/mm/damon/
H A Dops-common.h13 void damon_pmdp_mkold(pmd_t *pmd, struct vm_area_struct *vma, unsigned long addr);
/linux-master/arch/riscv/include/asm/
H A Dpgalloc.h19 pmd_t *pmd, pte_t *pte)
23 set_pmd(pmd, __pmd((pfn << _PAGE_PFN_SHIFT) | _PAGE_TABLE));
27 pmd_t *pmd, pgtable_t pte)
31 set_pmd(pmd, __pmd((pfn << _PAGE_PFN_SHIFT) | _PAGE_TABLE));
35 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) argument
37 unsigned long pfn = virt_to_pfn(pmd);
173 static inline void __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, argument
176 struct ptdesc *ptdesc = virt_to_ptdesc(pmd);
18 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) argument
26 pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t pte) argument
/linux-master/include/linux/
H A Dhuge_mm.h29 pmd_t *pmd, unsigned long addr, unsigned long next);
30 int zap_huge_pmd(struct mmu_gather *tlb, struct vm_area_struct *vma, pmd_t *pmd,
37 pmd_t *pmd, unsigned long addr, pgprot_t newprot,
276 void __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd,
310 spinlock_t *__pmd_trans_huge_lock(pmd_t *pmd, struct vm_area_struct *vma);
313 static inline int is_swap_pmd(pmd_t pmd) argument
315 return !pmd_none(pmd) && !pmd_present(pmd);
319 static inline spinlock_t *pmd_trans_huge_lock(pmd_t *pmd, argument
322 if (is_swap_pmd(*pmd) || pmd_trans_hug
360 is_huge_zero_pmd(pmd_t pmd) argument
439 __split_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd, unsigned long address, bool freeze, struct folio *folio) argument
466 is_swap_pmd(pmd_t pmd) argument
470 pmd_trans_huge_lock(pmd_t *pmd, struct vm_area_struct *vma) argument
491 is_huge_zero_pmd(pmd_t pmd) argument
506 follow_devmap_pmd(struct vm_area_struct *vma, unsigned long addr, pmd_t *pmd, int flags, struct dev_pagemap **pgmap) argument
[all...]
H A Dswapops.h335 extern void migration_entry_wait(struct mm_struct *mm, pmd_t *pmd,
359 static inline void migration_entry_wait(struct mm_struct *mm, pmd_t *pmd, argument
537 extern void pmd_migration_entry_wait(struct mm_struct *mm, pmd_t *pmd);
539 static inline swp_entry_t pmd_to_swp_entry(pmd_t pmd)
543 if (pmd_swp_soft_dirty(pmd))
544 pmd = pmd_swp_clear_soft_dirty(pmd);
545 if (pmd_swp_uffd_wp(pmd))
546 pmd = pmd_swp_clear_uffd_wp(pmd);
[all...]
/linux-master/arch/powerpc/mm/book3s64/
H A Dradix_pgtable.c63 * When allocating pud or pmd pointers, we allocate a complete page
628 static void free_pte_table(pte_t *pte_start, pmd_t *pmd) argument
640 pmd_clear(pmd);
645 pmd_t *pmd; local
649 pmd = pmd_start + i;
650 if (!pmd_none(*pmd))
761 pmd_t *pmd; local
763 pmd = pmd_start + pmd_index(addr);
764 for (; addr < end; addr = next, pmd++) {
767 if (!pmd_present(*pmd))
1017 pmd_t *pmd; local
1056 pmd_t *pmd; local
1141 pmd_t *pmd; local
1173 pmd_t *pmd; local
1236 pmd_t *pmd; local
1382 pmd_t pmd; local
1553 pmd_t *pmd; local
1575 pmd_set_huge(pmd_t *pmd, phys_addr_t addr, pgprot_t prot) argument
1588 pmd_clear_huge(pmd_t *pmd) argument
1598 pmd_free_pte_page(pmd_t *pmd, unsigned long addr) argument
[all...]

Completed in 197 milliseconds

1234567891011>>