Home
last modified time | relevance | path

Searched refs:pmd (Results 1 – 25 of 309) sorted by relevance

12345678910>>...13

/Linux-v5.4/drivers/md/
Ddm-thin-metadata.c221 struct dm_pool_metadata *pmd; member
381 static inline void __pmd_write_lock(struct dm_pool_metadata *pmd) in __pmd_write_lock() argument
382 __acquires(pmd->root_lock) in __pmd_write_lock()
384 down_write(&pmd->root_lock); in __pmd_write_lock()
386 #define pmd_write_lock_in_core(pmd) __pmd_write_lock((pmd)) argument
388 static inline void pmd_write_lock(struct dm_pool_metadata *pmd) in pmd_write_lock() argument
390 __pmd_write_lock(pmd); in pmd_write_lock()
391 if (unlikely(!pmd->in_service)) in pmd_write_lock()
392 pmd->in_service = true; in pmd_write_lock()
395 static inline void pmd_write_unlock(struct dm_pool_metadata *pmd) in pmd_write_unlock() argument
[all …]
Ddm-thin-metadata.h48 int dm_pool_metadata_close(struct dm_pool_metadata *pmd);
61 int dm_pool_create_thin(struct dm_pool_metadata *pmd, dm_thin_id dev);
69 int dm_pool_create_snap(struct dm_pool_metadata *pmd, dm_thin_id dev,
77 int dm_pool_delete_thin_device(struct dm_pool_metadata *pmd,
84 int dm_pool_commit_metadata(struct dm_pool_metadata *pmd);
94 int dm_pool_abort_metadata(struct dm_pool_metadata *pmd);
99 int dm_pool_set_metadata_transaction_id(struct dm_pool_metadata *pmd,
103 int dm_pool_get_metadata_transaction_id(struct dm_pool_metadata *pmd,
115 int dm_pool_reserve_metadata_snap(struct dm_pool_metadata *pmd);
116 int dm_pool_release_metadata_snap(struct dm_pool_metadata *pmd);
[all …]
/Linux-v5.4/arch/arc/include/asm/
Dhugepage.h14 static inline pte_t pmd_pte(pmd_t pmd) in pmd_pte() argument
16 return __pte(pmd_val(pmd)); in pmd_pte()
24 #define pmd_wrprotect(pmd) pte_pmd(pte_wrprotect(pmd_pte(pmd))) argument
25 #define pmd_mkwrite(pmd) pte_pmd(pte_mkwrite(pmd_pte(pmd))) argument
26 #define pmd_mkdirty(pmd) pte_pmd(pte_mkdirty(pmd_pte(pmd))) argument
27 #define pmd_mkold(pmd) pte_pmd(pte_mkold(pmd_pte(pmd))) argument
28 #define pmd_mkyoung(pmd) pte_pmd(pte_mkyoung(pmd_pte(pmd))) argument
29 #define pmd_mkhuge(pmd) pte_pmd(pte_mkhuge(pmd_pte(pmd))) argument
30 #define pmd_mknotpresent(pmd) pte_pmd(pte_mknotpresent(pmd_pte(pmd))) argument
31 #define pmd_mkclean(pmd) pte_pmd(pte_mkclean(pmd_pte(pmd))) argument
[all …]
/Linux-v5.4/arch/arm/include/asm/
Dpgtable-3level.h132 #define pmd_table(pmd) ((pmd_val(pmd) & PMD_TYPE_MASK) == \ argument
134 #define pmd_sect(pmd) ((pmd_val(pmd) & PMD_TYPE_MASK) == \ argument
136 #define pmd_large(pmd) pmd_sect(pmd) argument
162 #define pmd_bad(pmd) (!(pmd_val(pmd) & 2)) argument
198 #define pmd_isset(pmd, val) ((u32)(val) == (val) ? pmd_val(pmd) & (val) \ argument
199 : !!(pmd_val(pmd) & (val)))
200 #define pmd_isclear(pmd, val) (!(pmd_val(pmd) & (val))) argument
202 #define pmd_present(pmd) (pmd_isset((pmd), L_PMD_SECT_VALID)) argument
203 #define pmd_young(pmd) (pmd_isset((pmd), PMD_SECT_AF)) argument
211 #define pmd_write(pmd) (pmd_isclear((pmd), L_PMD_SECT_RDONLY)) argument
[all …]
/Linux-v5.4/arch/parisc/include/asm/
Dpgalloc.h62 static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd) in pgd_populate() argument
65 (__u32)(__pa((unsigned long)pmd) >> PxD_VALUE_SHIFT)); in pgd_populate()
70 pmd_t *pmd = (pmd_t *)__get_free_pages(GFP_KERNEL, PMD_ORDER); in pmd_alloc_one() local
71 if (pmd) in pmd_alloc_one()
72 memset(pmd, 0, PAGE_SIZE<<PMD_ORDER); in pmd_alloc_one()
73 return pmd; in pmd_alloc_one()
76 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument
78 if (pmd_flag(*pmd) & PxD_FLAG_ATTACHED) { in pmd_free()
88 free_pages((unsigned long)pmd, PMD_ORDER); in pmd_free()
102 #define pgd_populate(mm, pmd, pte) BUG() argument
[all …]
/Linux-v5.4/arch/mips/include/asm/
Dpgtable.h94 #define pmd_phys(pmd) virt_to_phys((void *)pmd_val(pmd)) argument
96 #define __pmd_page(pmd) (pfn_to_page(pmd_phys(pmd) >> PAGE_SHIFT)) argument
98 #define pmd_page(pmd) __pmd_page(pmd) argument
101 #define pmd_page_vaddr(pmd) pmd_val(pmd) argument
517 static inline int pmd_trans_huge(pmd_t pmd) argument
519 return !!(pmd_val(pmd) & _PAGE_HUGE);
522 static inline pmd_t pmd_mkhuge(pmd_t pmd) argument
524 pmd_val(pmd) |= _PAGE_HUGE;
526 return pmd;
530 pmd_t *pmdp, pmd_t pmd);
[all …]
Dpgalloc.h18 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, in pmd_populate_kernel() argument
21 set_pmd(pmd, __pmd((unsigned long)pte)); in pmd_populate_kernel()
24 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate() argument
27 set_pmd(pmd, __pmd((unsigned long)page_address(pte))); in pmd_populate()
29 #define pmd_pgtable(pmd) pmd_page(pmd) argument
38 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate() argument
40 set_pud(pud, __pud((unsigned long)pmd)); in pud_populate()
65 pmd_t *pmd; in pmd_alloc_one() local
67 pmd = (pmd_t *) __get_free_pages(GFP_KERNEL, PMD_ORDER); in pmd_alloc_one()
68 if (pmd) in pmd_alloc_one()
[all …]
/Linux-v5.4/arch/s390/include/asm/
Dpgtable.h695 static inline int pmd_large(pmd_t pmd) in pmd_large() argument
697 return (pmd_val(pmd) & _SEGMENT_ENTRY_LARGE) != 0; in pmd_large()
700 static inline int pmd_bad(pmd_t pmd) in pmd_bad() argument
702 if ((pmd_val(pmd) & _SEGMENT_ENTRY_TYPE_MASK) > 0) in pmd_bad()
704 if (pmd_large(pmd)) in pmd_bad()
705 return (pmd_val(pmd) & ~_SEGMENT_ENTRY_BITS_LARGE) != 0; in pmd_bad()
706 return (pmd_val(pmd) & ~_SEGMENT_ENTRY_BITS) != 0; in pmd_bad()
733 static inline int pmd_present(pmd_t pmd) in pmd_present() argument
735 return pmd_val(pmd) != _SEGMENT_ENTRY_EMPTY; in pmd_present()
738 static inline int pmd_none(pmd_t pmd) in pmd_none() argument
[all …]
/Linux-v5.4/arch/arm64/include/asm/
Dpgtable.h125 #define pmd_access_permitted(pmd, write) \ argument
126 (pte_access_permitted(pmd_pte(pmd), (write)))
205 static inline pmd_t pmd_mkcont(pmd_t pmd) in pmd_mkcont() argument
207 return __pmd(pmd_val(pmd) | PMD_SECT_CONT); in pmd_mkcont()
320 static inline pte_t pmd_pte(pmd_t pmd) in pmd_pte() argument
322 return __pte(pmd_val(pmd)); in pmd_pte()
349 static inline int pmd_protnone(pmd_t pmd) in pmd_protnone() argument
351 return pte_protnone(pmd_pte(pmd)); in pmd_protnone()
360 #define pmd_trans_huge(pmd) (pmd_val(pmd) && !(pmd_val(pmd) & PMD_TABLE_BIT)) argument
363 #define pmd_present(pmd) pte_present(pmd_pte(pmd)) argument
[all …]
/Linux-v5.4/arch/powerpc/include/asm/book3s/64/
Dpgtable.h744 #define __pmd_to_swp_entry(pmd) (__pte_to_swp_entry(pmd_pte(pmd))) argument
868 static inline int pmd_none(pmd_t pmd) in pmd_none() argument
870 return !pmd_raw(pmd); in pmd_none()
873 static inline int pmd_present(pmd_t pmd) in pmd_present() argument
881 if (pmd_raw(pmd) & cpu_to_be64(_PAGE_PRESENT | _PAGE_INVALID)) in pmd_present()
887 static inline int pmd_is_serializing(pmd_t pmd) in pmd_is_serializing() argument
897 if ((pmd_raw(pmd) & cpu_to_be64(_PAGE_PRESENT | _PAGE_INVALID)) == in pmd_is_serializing()
904 static inline int pmd_bad(pmd_t pmd) in pmd_bad() argument
907 return radix__pmd_bad(pmd); in pmd_bad()
908 return hash__pmd_bad(pmd); in pmd_bad()
[all …]
/Linux-v5.4/mm/kasan/
Dinit.c74 static inline bool kasan_pte_table(pmd_t pmd) in kasan_pte_table() argument
76 return pmd_page(pmd) == virt_to_page(lm_alias(kasan_early_shadow_pte)); in kasan_pte_table()
96 static void __ref zero_pte_populate(pmd_t *pmd, unsigned long addr, in zero_pte_populate() argument
99 pte_t *pte = pte_offset_kernel(pmd, addr); in zero_pte_populate()
109 pte = pte_offset_kernel(pmd, addr); in zero_pte_populate()
116 pmd_t *pmd = pmd_offset(pud, addr); in zero_pmd_populate() local
123 pmd_populate_kernel(&init_mm, pmd, in zero_pmd_populate()
128 if (pmd_none(*pmd)) { in zero_pmd_populate()
138 pmd_populate_kernel(&init_mm, pmd, p); in zero_pmd_populate()
140 zero_pte_populate(pmd, addr, next); in zero_pmd_populate()
[all …]
/Linux-v5.4/mm/
Dhuge_memory.c492 pmd_t maybe_pmd_mkwrite(pmd_t pmd, struct vm_area_struct *vma) in maybe_pmd_mkwrite() argument
495 pmd = pmd_mkwrite(pmd); in maybe_pmd_mkwrite()
496 return pmd; in maybe_pmd_mkwrite()
604 vmf->ptl = pmd_lock(vma->vm_mm, vmf->pmd); in __do_huge_pmd_anonymous_page()
605 if (unlikely(!pmd_none(*vmf->pmd))) { in __do_huge_pmd_anonymous_page()
632 pgtable_trans_huge_deposit(vma->vm_mm, vmf->pmd, pgtable); in __do_huge_pmd_anonymous_page()
633 set_pmd_at(vma->vm_mm, haddr, vmf->pmd, entry); in __do_huge_pmd_anonymous_page()
690 struct vm_area_struct *vma, unsigned long haddr, pmd_t *pmd, in set_huge_zero_page() argument
694 if (!pmd_none(*pmd)) in set_huge_zero_page()
699 pgtable_trans_huge_deposit(mm, pmd, pgtable); in set_huge_zero_page()
[all …]
/Linux-v5.4/arch/x86/include/asm/
Dpgtable.h30 int __init __early_make_pgtable(unsigned long address, pmdval_t pmd);
69 #define set_pmd(pmdp, pmd) native_set_pmd(pmdp, pmd) argument
93 #define pmd_clear(pmd) native_pmd_clear(pmd) argument
162 static inline int pmd_dirty(pmd_t pmd) in pmd_dirty() argument
164 return pmd_flags(pmd) & _PAGE_DIRTY; in pmd_dirty()
167 static inline int pmd_young(pmd_t pmd) in pmd_young() argument
169 return pmd_flags(pmd) & _PAGE_ACCESSED; in pmd_young()
218 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn() argument
220 phys_addr_t pfn = pmd_val(pmd); in pmd_pfn()
222 return (pfn & pmd_pfn_mask(pmd)) >> PAGE_SHIFT; in pmd_pfn()
[all …]
Dpgalloc.h64 pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument
67 set_pmd(pmd, __pmd(__pa(pte) | _PAGE_TABLE)); in pmd_populate_kernel()
71 pmd_t *pmd, pte_t *pte) in pmd_populate_kernel_safe() argument
74 set_pmd_safe(pmd, __pmd(__pa(pte) | _PAGE_TABLE)); in pmd_populate_kernel_safe()
77 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate() argument
83 set_pmd(pmd, __pmd(((pteval_t)pfn << PAGE_SHIFT) | _PAGE_TABLE)); in pmd_populate()
86 #define pmd_pgtable(pmd) pmd_page(pmd) argument
106 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument
108 BUG_ON((unsigned long)pmd & (PAGE_SIZE-1)); in pmd_free()
109 pgtable_pmd_page_dtor(virt_to_page(pmd)); in pmd_free()
[all …]
/Linux-v5.4/arch/x86/power/
Dhibernate_32.c59 static pte_t *resume_one_page_table_init(pmd_t *pmd) in resume_one_page_table_init() argument
61 if (pmd_none(*pmd)) { in resume_one_page_table_init()
66 set_pmd(pmd, __pmd(__pa(page_table) | _PAGE_TABLE)); in resume_one_page_table_init()
68 BUG_ON(page_table != pte_offset_kernel(pmd, 0)); in resume_one_page_table_init()
73 return pte_offset_kernel(pmd, 0); in resume_one_page_table_init()
85 pmd_t *pmd; in resume_physical_mapping_init() local
94 pmd = resume_one_md_table_init(pgd); in resume_physical_mapping_init()
95 if (!pmd) in resume_physical_mapping_init()
101 for (pmd_idx = 0; pmd_idx < PTRS_PER_PMD; pmd++, pmd_idx++) { in resume_physical_mapping_init()
110 set_pmd(pmd, pfn_pmd(pfn, PAGE_KERNEL_LARGE_EXEC)); in resume_physical_mapping_init()
[all …]
/Linux-v5.4/arch/arm/mm/
Didmap.c27 pmd_t *pmd; in idmap_add_pmd() local
31 pmd = pmd_alloc_one(&init_mm, addr); in idmap_add_pmd()
32 if (!pmd) { in idmap_add_pmd()
41 memcpy(pmd, pmd_offset(pud, 0), in idmap_add_pmd()
43 pud_populate(&init_mm, pud, pmd); in idmap_add_pmd()
44 pmd += pmd_index(addr); in idmap_add_pmd()
46 pmd = pmd_offset(pud, addr); in idmap_add_pmd()
50 *pmd = __pmd((addr & PMD_MASK) | prot); in idmap_add_pmd()
51 flush_pmd_entry(pmd); in idmap_add_pmd()
52 } while (pmd++, addr = next, addr != end); in idmap_add_pmd()
[all …]
/Linux-v5.4/arch/riscv/include/asm/
Dpgalloc.h16 pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument
20 set_pmd(pmd, __pmd((pfn << _PAGE_PFN_SHIFT) | _PAGE_TABLE)); in pmd_populate_kernel()
24 pmd_t *pmd, pgtable_t pte) in pmd_populate() argument
28 set_pmd(pmd, __pmd((pfn << _PAGE_PFN_SHIFT) | _PAGE_TABLE)); in pmd_populate()
32 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate() argument
34 unsigned long pfn = virt_to_pfn(pmd); in pud_populate()
40 #define pmd_pgtable(pmd) pmd_page(pmd) argument
70 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument
72 free_page((unsigned long)pmd); in pmd_free()
75 #define __pmd_free_tlb(tlb, pmd, addr) pmd_free((tlb)->mm, pmd) argument
/Linux-v5.4/arch/nds32/mm/
Dmm-nds32.c43 pmd_t *pmd; in pgd_free() local
49 pmd = (pmd_t *) pgd; in pgd_free()
50 if (pmd_none(*pmd)) in pgd_free()
52 if (pmd_bad(*pmd)) { in pgd_free()
53 pmd_ERROR(*pmd); in pgd_free()
54 pmd_clear(pmd); in pgd_free()
58 pte = pmd_page(*pmd); in pgd_free()
59 pmd_clear(pmd); in pgd_free()
63 pmd_free(mm, pmd); in pgd_free()
77 pmd_t *pmd; in setup_mm_for_reboot() local
[all …]
/Linux-v5.4/arch/alpha/include/asm/
Dpgalloc.h17 pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t pte) in pmd_populate() argument
19 pmd_set(pmd, (pte_t *)(page_to_pa(pte) + PAGE_OFFSET)); in pmd_populate()
21 #define pmd_pgtable(pmd) pmd_page(pmd) argument
24 pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument
26 pmd_set(pmd, pte); in pmd_populate_kernel()
30 pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd) in pgd_populate() argument
32 pgd_set(pgd, pmd); in pgd_populate()
51 pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument
53 free_page((unsigned long)pmd); in pmd_free()
/Linux-v5.4/arch/x86/mm/
Dpgtable.c54 void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) in ___pmd_free_tlb() argument
56 struct page *page = virt_to_page(pmd); in ___pmd_free_tlb()
57 paravirt_release_pmd(__pa(pmd) >> PAGE_SHIFT); in ___pmd_free_tlb()
181 void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) in pud_populate() argument
183 paravirt_alloc_pmd(mm, __pa(pmd) >> PAGE_SHIFT); in pud_populate()
187 set_pud(pudp, __pud(__pa(pmd) | _PAGE_PRESENT)); in pud_populate()
228 pmd_t *pmd = (pmd_t *)__get_free_page(gfp); in preallocate_pmds() local
229 if (!pmd) in preallocate_pmds()
231 if (pmd && !pgtable_pmd_page_ctor(virt_to_page(pmd))) { in preallocate_pmds()
232 free_page((unsigned long)pmd); in preallocate_pmds()
[all …]
Dinit_64.c74 DEFINE_POPULATE(pud_populate, pud, pmd, init)
75 DEFINE_POPULATE(pmd_populate_kernel, pmd, pte, init)
89 DEFINE_ENTRY(pmd, pmd, init)
270 pmd_t *pmd = (pmd_t *) spp_getpage(); in fill_pmd() local
271 pud_populate(&init_mm, pud, pmd); in fill_pmd()
272 if (pmd != pmd_offset(pud, 0)) in fill_pmd()
274 pmd, pmd_offset(pud, 0)); in fill_pmd()
279 static pte_t *fill_pte(pmd_t *pmd, unsigned long vaddr) in fill_pte() argument
281 if (pmd_none(*pmd)) { in fill_pte()
283 pmd_populate_kernel(&init_mm, pmd, pte); in fill_pte()
[all …]
/Linux-v5.4/include/asm-generic/
Dpgtable.h82 pmd_t pmd = *pmdp; in pmdp_test_and_clear_young() local
84 if (!pmd_young(pmd)) in pmdp_test_and_clear_young()
87 set_pmd_at(vma->vm_mm, address, pmdp, pmd_mkold(pmd)); in pmdp_test_and_clear_young()
141 pmd_t pmd = *pmdp; in pmdp_huge_get_and_clear() local
143 return pmd; in pmdp_huge_get_and_clear()
319 unsigned long address, pmd_t *pmdp, pmd_t pmd) in generic_pmdp_establish() argument
322 set_pmd_at(vma->vm_mm, address, pmdp, pmd); in generic_pmdp_establish()
358 #define pmd_access_permitted(pmd, write) \ argument
359 (pmd_present(pmd) && (!(write) || pmd_write(pmd)))
417 #define set_pmd_safe(pmdp, pmd) \ argument
[all …]
/Linux-v5.4/arch/m68k/include/asm/
Dmotorola_pgalloc.h75 static inline int pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument
77 return free_pointer_table(pmd); in pmd_free()
80 static inline int __pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd, in __pmd_free_tlb() argument
83 return free_pointer_table(pmd); in __pmd_free_tlb()
98 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, pte_t *pte) in pmd_populate_kernel() argument
100 pmd_set(pmd, pte); in pmd_populate_kernel()
103 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, pgtable_t page) in pmd_populate() argument
105 pmd_set(pmd, page_address(page)); in pmd_populate()
107 #define pmd_pgtable(pmd) pmd_page(pmd) argument
109 static inline void pgd_populate(struct mm_struct *mm, pgd_t *pgd, pmd_t *pmd) in pgd_populate() argument
[all …]
/Linux-v5.4/arch/powerpc/include/asm/nohash/64/
Dpgalloc.h31 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate() argument
33 pud_set(pud, (unsigned long)pmd); in pud_populate()
36 static inline void pmd_populate_kernel(struct mm_struct *mm, pmd_t *pmd, in pmd_populate_kernel() argument
39 pmd_set(pmd, (unsigned long)pte); in pmd_populate_kernel()
42 static inline void pmd_populate(struct mm_struct *mm, pmd_t *pmd, in pmd_populate() argument
45 pmd_set(pmd, (unsigned long)pte_page); in pmd_populate()
54 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument
56 kmem_cache_free(PGT_CACHE(PMD_CACHE_INDEX), pmd); in pmd_free()
59 #define __pmd_free_tlb(tlb, pmd, addr) \ argument
60 pgtable_free_tlb(tlb, pmd, PMD_CACHE_INDEX)
/Linux-v5.4/arch/sh/mm/
Dhugetlbpage.c30 pmd_t *pmd; in huge_pte_alloc() local
37 pmd = pmd_alloc(mm, pud, addr); in huge_pte_alloc()
38 if (pmd) in huge_pte_alloc()
39 pte = pte_alloc_map(mm, pmd, addr); in huge_pte_alloc()
51 pmd_t *pmd; in huge_pte_offset() local
58 pmd = pmd_offset(pud, addr); in huge_pte_offset()
59 if (pmd) in huge_pte_offset()
60 pte = pte_offset_map(pmd, addr); in huge_pte_offset()
67 int pmd_huge(pmd_t pmd) in pmd_huge() argument

12345678910>>...13