| /kernel/linux/linux-6.6/drivers/md/ |
| D | dm-thin-metadata.c | 233 struct dm_pool_metadata *pmd; member 419 static inline void pmd_write_lock_in_core(struct dm_pool_metadata *pmd) in pmd_write_lock_in_core() argument 420 __acquires(pmd->root_lock) in pmd_write_lock_in_core() 422 down_write(&pmd->root_lock); in pmd_write_lock_in_core() 425 static inline void pmd_write_lock(struct dm_pool_metadata *pmd) in pmd_write_lock() argument 427 pmd_write_lock_in_core(pmd); in pmd_write_lock() 428 if (unlikely(!pmd->in_service)) in pmd_write_lock() 429 pmd->in_service = true; in pmd_write_lock() 432 static inline void pmd_write_unlock(struct dm_pool_metadata *pmd) in pmd_write_unlock() argument 433 __releases(pmd->root_lock) in pmd_write_unlock() [all …]
|
| D | dm-thin-metadata.h | 49 int dm_pool_metadata_close(struct dm_pool_metadata *pmd); 62 int dm_pool_create_thin(struct dm_pool_metadata *pmd, dm_thin_id dev); 70 int dm_pool_create_snap(struct dm_pool_metadata *pmd, dm_thin_id dev, 78 int dm_pool_delete_thin_device(struct dm_pool_metadata *pmd, 85 int dm_pool_commit_metadata(struct dm_pool_metadata *pmd); 95 int dm_pool_abort_metadata(struct dm_pool_metadata *pmd); 100 int dm_pool_set_metadata_transaction_id(struct dm_pool_metadata *pmd, 104 int dm_pool_get_metadata_transaction_id(struct dm_pool_metadata *pmd, 116 int dm_pool_reserve_metadata_snap(struct dm_pool_metadata *pmd); 117 int dm_pool_release_metadata_snap(struct dm_pool_metadata *pmd); [all …]
|
| /kernel/linux/linux-5.10/drivers/md/ |
| D | dm-thin-metadata.c | 230 struct dm_pool_metadata *pmd; member 390 static inline void pmd_write_lock_in_core(struct dm_pool_metadata *pmd) in pmd_write_lock_in_core() argument 391 __acquires(pmd->root_lock) in pmd_write_lock_in_core() 393 down_write(&pmd->root_lock); in pmd_write_lock_in_core() 396 static inline void pmd_write_lock(struct dm_pool_metadata *pmd) in pmd_write_lock() argument 398 pmd_write_lock_in_core(pmd); in pmd_write_lock() 399 if (unlikely(!pmd->in_service)) in pmd_write_lock() 400 pmd->in_service = true; in pmd_write_lock() 403 static inline void pmd_write_unlock(struct dm_pool_metadata *pmd) in pmd_write_unlock() argument 404 __releases(pmd->root_lock) in pmd_write_unlock() [all …]
|
| D | dm-thin-metadata.h | 48 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 …]
|
| /kernel/linux/linux-5.10/arch/arc/include/asm/ |
| D | hugepage.h | 13 static inline pte_t pmd_pte(pmd_t pmd) in pmd_pte() argument 15 return __pte(pmd_val(pmd)); in pmd_pte() 23 #define pmd_wrprotect(pmd) pte_pmd(pte_wrprotect(pmd_pte(pmd))) argument 24 #define pmd_mkwrite(pmd) pte_pmd(pte_mkwrite(pmd_pte(pmd))) argument 25 #define pmd_mkdirty(pmd) pte_pmd(pte_mkdirty(pmd_pte(pmd))) argument 26 #define pmd_mkold(pmd) pte_pmd(pte_mkold(pmd_pte(pmd))) argument 27 #define pmd_mkyoung(pmd) pte_pmd(pte_mkyoung(pmd_pte(pmd))) argument 28 #define pmd_mkhuge(pmd) pte_pmd(pte_mkhuge(pmd_pte(pmd))) argument 29 #define pmd_mkinvalid(pmd) pte_pmd(pte_mknotpresent(pmd_pte(pmd))) argument 30 #define pmd_mkclean(pmd) pte_pmd(pte_mkclean(pmd_pte(pmd))) argument [all …]
|
| /kernel/linux/linux-6.6/arch/arc/include/asm/ |
| D | hugepage.h | 13 static inline pte_t pmd_pte(pmd_t pmd) in pmd_pte() argument 15 return __pte(pmd_val(pmd)); in pmd_pte() 23 #define pmd_wrprotect(pmd) pte_pmd(pte_wrprotect(pmd_pte(pmd))) argument 24 #define pmd_mkwrite_novma(pmd) pte_pmd(pte_mkwrite_novma(pmd_pte(pmd))) argument 25 #define pmd_mkdirty(pmd) pte_pmd(pte_mkdirty(pmd_pte(pmd))) argument 26 #define pmd_mkold(pmd) pte_pmd(pte_mkold(pmd_pte(pmd))) argument 27 #define pmd_mkyoung(pmd) pte_pmd(pte_mkyoung(pmd_pte(pmd))) argument 28 #define pmd_mkhuge(pmd) pte_pmd(pte_mkhuge(pmd_pte(pmd))) argument 29 #define pmd_mkinvalid(pmd) pte_pmd(pte_mknotpresent(pmd_pte(pmd))) argument 30 #define pmd_mkclean(pmd) pte_pmd(pte_mkclean(pmd_pte(pmd))) argument [all …]
|
| /kernel/linux/linux-5.10/arch/arm/include/asm/ |
| D | pgtable-3level.h | 114 #define pmd_table(pmd) ((pmd_val(pmd) & PMD_TYPE_MASK) == \ argument 116 #define pmd_sect(pmd) ((pmd_val(pmd) & PMD_TYPE_MASK) == \ argument 118 #define pmd_large(pmd) pmd_sect(pmd) argument 119 #define pmd_leaf(pmd) pmd_sect(pmd) argument 138 #define pmd_bad(pmd) (!(pmd_val(pmd) & 2)) argument 174 #define pmd_isset(pmd, val) ((u32)(val) == (val) ? pmd_val(pmd) & (val) \ argument 175 : !!(pmd_val(pmd) & (val))) 176 #define pmd_isclear(pmd, val) (!(pmd_val(pmd) & (val))) argument 178 #define pmd_present(pmd) (pmd_isset((pmd), L_PMD_SECT_VALID)) argument 179 #define pmd_young(pmd) (pmd_isset((pmd), PMD_SECT_AF)) argument [all …]
|
| /kernel/linux/linux-6.6/arch/arm/include/asm/ |
| D | pgtable-3level.h | 117 #define pmd_table(pmd) ((pmd_val(pmd) & PMD_TYPE_MASK) == \ argument 119 #define pmd_sect(pmd) ((pmd_val(pmd) & PMD_TYPE_MASK) == \ argument 121 #define pmd_large(pmd) pmd_sect(pmd) argument 122 #define pmd_leaf(pmd) pmd_sect(pmd) argument 141 #define pmd_bad(pmd) (!(pmd_val(pmd) & 2)) argument 177 #define pmd_isset(pmd, val) ((u32)(val) == (val) ? pmd_val(pmd) & (val) \ argument 178 : !!(pmd_val(pmd) & (val))) 179 #define pmd_isclear(pmd, val) (!(pmd_val(pmd) & (val))) argument 181 #define pmd_present(pmd) (pmd_isset((pmd), L_PMD_SECT_VALID)) argument 182 #define pmd_young(pmd) (pmd_isset((pmd), PMD_SECT_AF)) argument [all …]
|
| /kernel/linux/linux-6.6/arch/loongarch/include/asm/ |
| D | pgtable.h | 113 pr_err("%s:%d: bad pmd %016lx.\n", __FILE__, __LINE__, pmd_val(e)) 172 typedef struct { unsigned long pmd; } pmd_t; member 173 #define pmd_val(x) ((x).pmd) 214 * Empty pmd entries point to the invalid_pte_table. 216 static inline int pmd_none(pmd_t pmd) in pmd_none() argument 218 return pmd_val(pmd) == (unsigned long)invalid_pte_table; in pmd_none() 221 static inline int pmd_bad(pmd_t pmd) in pmd_bad() argument 223 return (pmd_val(pmd) & ~PAGE_MASK); in pmd_bad() 226 static inline int pmd_present(pmd_t pmd) in pmd_present() argument 228 if (unlikely(pmd_val(pmd) & _PAGE_HUGE)) in pmd_present() [all …]
|
| /kernel/linux/linux-6.6/arch/arm64/include/asm/ |
| D | pgtable.h | 155 #define pmd_access_permitted(pmd, write) \ argument 156 (pte_access_permitted(pmd_pte(pmd), (write))) 172 static inline pmd_t clear_pmd_bit(pmd_t pmd, pgprot_t prot) in clear_pmd_bit() argument 174 pmd_val(pmd) &= ~pgprot_val(prot); in clear_pmd_bit() 175 return pmd; in clear_pmd_bit() 178 static inline pmd_t set_pmd_bit(pmd_t pmd, pgprot_t prot) in set_pmd_bit() argument 180 pmd_val(pmd) |= pgprot_val(prot); in set_pmd_bit() 181 return pmd; in set_pmd_bit() 254 static inline pmd_t pmd_mkcont(pmd_t pmd) in pmd_mkcont() argument 256 return __pmd(pmd_val(pmd) | PMD_SECT_CONT); in pmd_mkcont() [all …]
|
| /kernel/linux/linux-5.10/arch/mips/include/asm/ |
| D | pgtable.h | 92 #define pmd_phys(pmd) virt_to_phys((void *)pmd_val(pmd)) argument 94 #define __pmd_page(pmd) (pfn_to_page(pmd_phys(pmd) >> PAGE_SHIFT)) argument 96 #define pmd_page(pmd) __pmd_page(pmd) argument 99 #define pmd_page_vaddr(pmd) pmd_val(pmd) argument 585 static inline int pmd_trans_huge(pmd_t pmd) argument 587 return !!(pmd_val(pmd) & _PAGE_HUGE); 590 static inline pmd_t pmd_mkhuge(pmd_t pmd) argument 592 pmd_val(pmd) |= _PAGE_HUGE; 594 return pmd; 598 pmd_t *pmdp, pmd_t pmd); [all …]
|
| /kernel/linux/linux-5.10/arch/arm64/include/asm/ |
| D | pgtable.h | 145 #define pmd_access_permitted(pmd, write) \ argument 146 (pte_access_permitted(pmd_pte(pmd), (write))) 162 static inline pmd_t clear_pmd_bit(pmd_t pmd, pgprot_t prot) in clear_pmd_bit() argument 164 pmd_val(pmd) &= ~pgprot_val(prot); in clear_pmd_bit() 165 return pmd; in clear_pmd_bit() 168 static inline pmd_t set_pmd_bit(pmd_t pmd, pgprot_t prot) in set_pmd_bit() argument 170 pmd_val(pmd) |= pgprot_val(prot); in set_pmd_bit() 171 return pmd; in set_pmd_bit() 244 static inline pmd_t pmd_mkcont(pmd_t pmd) in pmd_mkcont() argument 246 return __pmd(pmd_val(pmd) | PMD_SECT_CONT); in pmd_mkcont() [all …]
|
| /kernel/linux/linux-5.10/mm/ |
| D | debug_vm_pgtable.c | 152 pmd_t pmd; in pmd_basic_tests() local 157 pr_debug("Validating PMD basic (%pGv)\n", ptr); in pmd_basic_tests() 158 pmd = pfn_pmd(pfn, prot); in pmd_basic_tests() 167 WARN_ON(pmd_dirty(pmd_wrprotect(pmd))); in pmd_basic_tests() 170 WARN_ON(!pmd_same(pmd, pmd)); in pmd_basic_tests() 171 WARN_ON(!pmd_young(pmd_mkyoung(pmd_mkold(pmd)))); in pmd_basic_tests() 172 WARN_ON(!pmd_dirty(pmd_mkdirty(pmd_mkclean(pmd)))); in pmd_basic_tests() 173 WARN_ON(!pmd_write(pmd_mkwrite(pmd_wrprotect(pmd)))); in pmd_basic_tests() 174 WARN_ON(pmd_young(pmd_mkold(pmd_mkyoung(pmd)))); in pmd_basic_tests() 175 WARN_ON(pmd_dirty(pmd_mkclean(pmd_mkdirty(pmd)))); in pmd_basic_tests() [all …]
|
| D | huge_memory.c | 389 * DAX PMD support. in hugepage_init() 479 pmd_t maybe_pmd_mkwrite(pmd_t pmd, struct vm_area_struct *vma) in maybe_pmd_mkwrite() argument 482 pmd = pmd_mkwrite(pmd); in maybe_pmd_mkwrite() 483 return pmd; in maybe_pmd_mkwrite() 613 vmf->ptl = pmd_lock(vma->vm_mm, vmf->pmd); in __do_huge_pmd_anonymous_page() 614 if (unlikely(!pmd_none(*vmf->pmd))) { in __do_huge_pmd_anonymous_page() 639 pgtable_trans_huge_deposit(vma->vm_mm, vmf->pmd, pgtable); in __do_huge_pmd_anonymous_page() 640 set_pmd_at(vma->vm_mm, haddr, vmf->pmd, entry); in __do_huge_pmd_anonymous_page() 696 struct vm_area_struct *vma, unsigned long haddr, pmd_t *pmd, in set_huge_zero_page() argument 700 if (!pmd_none(*pmd)) in set_huge_zero_page() [all …]
|
| /kernel/linux/linux-6.6/arch/mips/include/asm/ |
| D | pgtable.h | 65 #define pmd_phys(pmd) virt_to_phys((void *)pmd_val(pmd)) argument 67 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn() argument 69 return pmd_val(pmd) >> PFN_PTE_SHIFT; in pmd_pfn() 73 #define pmd_page(pmd) (pfn_to_page(pmd_phys(pmd) >> PAGE_SHIFT)) argument 76 #define pmd_page_vaddr(pmd) pmd_val(pmd) argument 413 static inline int pmd_write(pmd_t pmd) argument 415 return !!(pmd_val(pmd) & _PAGE_WRITE); 418 static inline struct page *pmd_page(pmd_t pmd) argument 420 if (pmd_val(pmd) & _PAGE_HUGE) 421 return pfn_to_page(pmd_pfn(pmd)); [all …]
|
| /kernel/linux/linux-6.6/arch/x86/include/asm/ |
| D | pgtable.h | 28 bool __init __early_make_pgtable(unsigned long address, pmdval_t pmd); 74 #define set_pmd(pmdp, pmd) native_set_pmd(pmdp, pmd) argument 98 #define pmd_clear(pmd) native_pmd_clear(pmd) argument 144 static inline bool pmd_dirty(pmd_t pmd) in pmd_dirty() argument 146 return pmd_flags(pmd) & _PAGE_DIRTY_BITS; in pmd_dirty() 149 static inline bool pmd_shstk(pmd_t pmd) in pmd_shstk() argument 152 (pmd_flags(pmd) & (_PAGE_RW | _PAGE_DIRTY | _PAGE_PSE)) == in pmd_shstk() 157 static inline int pmd_young(pmd_t pmd) in pmd_young() argument 159 return pmd_flags(pmd) & _PAGE_ACCESSED; in pmd_young() 182 static inline int pmd_write(pmd_t pmd) in pmd_write() argument [all …]
|
| /kernel/linux/linux-5.10/arch/parisc/include/asm/ |
| D | pgalloc.h | 39 /* Three Level Page Table Support for pmd's */ 41 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate() argument 44 (__u32)(__pa((unsigned long)pmd) >> PxD_VALUE_SHIFT))); in pud_populate() 49 pmd_t *pmd; in pmd_alloc_one() local 51 pmd = (pmd_t *)__get_free_pages(GFP_PGTABLE_KERNEL, PMD_ORDER); in pmd_alloc_one() 52 if (likely(pmd)) in pmd_alloc_one() 53 memset ((void *)pmd, 0, PAGE_SIZE << PMD_ORDER); in pmd_alloc_one() 54 return pmd; in pmd_alloc_one() 57 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument 59 free_pages((unsigned long)pmd, PMD_ORDER); in pmd_free() [all …]
|
| /kernel/linux/linux-6.6/arch/riscv/include/asm/ |
| D | pgtable.h | 216 static inline int pmd_present(pmd_t pmd) in pmd_present() argument 224 return (pmd_val(pmd) & (_PAGE_PRESENT | _PAGE_PROT_NONE | _PAGE_LEAF)); in pmd_present() 227 static inline int pmd_present(pmd_t pmd) in pmd_present() argument 229 return (pmd_val(pmd) & (_PAGE_PRESENT | _PAGE_PROT_NONE)); in pmd_present() 233 static inline int pmd_none(pmd_t pmd) in pmd_none() argument 235 return (pmd_val(pmd) == 0); in pmd_none() 238 static inline int pmd_bad(pmd_t pmd) in pmd_bad() argument 240 return !pmd_present(pmd) || (pmd_val(pmd) & _PAGE_LEAF); in pmd_bad() 244 static inline int pmd_leaf(pmd_t pmd) in pmd_leaf() argument 246 return pmd_present(pmd) && (pmd_val(pmd) & _PAGE_LEAF); in pmd_leaf() [all …]
|
| /kernel/linux/linux-6.6/mm/ |
| D | huge_memory.c | 551 pmd_t maybe_pmd_mkwrite(pmd_t pmd, struct vm_area_struct *vma) in maybe_pmd_mkwrite() argument 554 pmd = pmd_mkwrite(pmd, vma); in maybe_pmd_mkwrite() 555 return pmd; in maybe_pmd_mkwrite() 679 vmf->ptl = pmd_lock(vma->vm_mm, vmf->pmd); in __do_huge_pmd_anonymous_page() 680 if (unlikely(!pmd_none(*vmf->pmd))) { in __do_huge_pmd_anonymous_page() 703 pgtable_trans_huge_deposit(vma->vm_mm, vmf->pmd, pgtable); in __do_huge_pmd_anonymous_page() 704 set_pmd_at(vma->vm_mm, haddr, vmf->pmd, entry); in __do_huge_pmd_anonymous_page() 705 update_mmu_cache_pmd(vma, vmf->address, vmf->pmd); in __do_huge_pmd_anonymous_page() 761 struct vm_area_struct *vma, unsigned long haddr, pmd_t *pmd, in set_huge_zero_page() argument 765 if (!pmd_none(*pmd)) in set_huge_zero_page() [all …]
|
| /kernel/linux/linux-5.10/arch/x86/include/asm/ |
| D | pgtable.h | 31 bool __init __early_make_pgtable(unsigned long address, pmdval_t pmd); 70 #define set_pmd(pmdp, pmd) native_set_pmd(pmdp, pmd) argument 94 #define pmd_clear(pmd) native_pmd_clear(pmd) argument 163 static inline int pmd_dirty(pmd_t pmd) in pmd_dirty() argument 165 return pmd_flags(pmd) & _PAGE_DIRTY; in pmd_dirty() 168 static inline int pmd_young(pmd_t pmd) in pmd_young() argument 170 return pmd_flags(pmd) & _PAGE_ACCESSED; in pmd_young() 219 static inline unsigned long pmd_pfn(pmd_t pmd) in pmd_pfn() argument 221 phys_addr_t pfn = pmd_val(pmd); in pmd_pfn() 223 return (pfn & pmd_pfn_mask(pmd)) >> PAGE_SHIFT; in pmd_pfn() [all …]
|
| /kernel/linux/linux-6.6/arch/x86/mm/ |
| D | pgtable.c | 61 void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) in ___pmd_free_tlb() argument 63 struct ptdesc *ptdesc = virt_to_ptdesc(pmd); in ___pmd_free_tlb() 64 paravirt_release_pmd(__pa(pmd) >> PAGE_SHIFT); in ___pmd_free_tlb() 126 ptes in non-PAE, or shared PMD in PAE), then just copy the in pgd_ctor() 156 * kernel pmd is shared. If PAE were not to share the pmd a similar 172 * Also, if we're in a paravirt environment where the kernel pmd is 188 void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) in pud_populate() argument 190 paravirt_alloc_pmd(mm, __pa(pmd) >> PAGE_SHIFT); in pud_populate() 193 reserved at the pmd (PDPT) level. */ in pud_populate() 194 set_pud(pudp, __pud(__pa(pmd) | _PAGE_PRESENT)); in pud_populate() [all …]
|
| /kernel/linux/linux-5.10/arch/x86/mm/ |
| D | pgtable.c | 61 void ___pmd_free_tlb(struct mmu_gather *tlb, pmd_t *pmd) in ___pmd_free_tlb() argument 63 struct page *page = virt_to_page(pmd); in ___pmd_free_tlb() 64 paravirt_release_pmd(__pa(pmd) >> PAGE_SHIFT); in ___pmd_free_tlb() 126 ptes in non-PAE, or shared PMD in PAE), then just copy the in pgd_ctor() 156 * kernel pmd is shared. If PAE were not to share the pmd a similar 172 * Also, if we're in a paravirt environment where the kernel pmd is 188 void pud_populate(struct mm_struct *mm, pud_t *pudp, pmd_t *pmd) in pud_populate() argument 190 paravirt_alloc_pmd(mm, __pa(pmd) >> PAGE_SHIFT); in pud_populate() 193 reserved at the pmd (PDPT) level. */ in pud_populate() 194 set_pud(pudp, __pud(__pa(pmd) | _PAGE_PRESENT)); in pud_populate() [all …]
|
| /kernel/linux/linux-6.6/mm/kasan/ |
| D | init.c | 70 static inline bool kasan_pte_table(pmd_t pmd) in kasan_pte_table() argument 72 return pmd_page(pmd) == virt_to_page(lm_alias(kasan_early_shadow_pte)); in kasan_pte_table() 92 static void __ref zero_pte_populate(pmd_t *pmd, unsigned long addr, in zero_pte_populate() argument 95 pte_t *pte = pte_offset_kernel(pmd, addr); in zero_pte_populate() 105 pte = pte_offset_kernel(pmd, addr); in zero_pte_populate() 112 pmd_t *pmd = pmd_offset(pud, addr); in zero_pmd_populate() local 119 pmd_populate_kernel(&init_mm, pmd, in zero_pmd_populate() 124 if (pmd_none(*pmd)) { in zero_pmd_populate() 134 pmd_populate_kernel(&init_mm, pmd, p); in zero_pmd_populate() 136 zero_pte_populate(pmd, addr, next); in zero_pmd_populate() [all …]
|
| /kernel/linux/linux-5.10/mm/kasan/ |
| D | init.c | 74 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 …]
|
| /kernel/linux/linux-6.6/arch/parisc/include/asm/ |
| D | pgalloc.h | 39 /* Three Level Page Table Support for pmd's */ 41 static inline void pud_populate(struct mm_struct *mm, pud_t *pud, pmd_t *pmd) in pud_populate() argument 44 (__u32)(__pa((unsigned long)pmd) >> PxD_VALUE_SHIFT))); in pud_populate() 49 pmd_t *pmd; in pmd_alloc_one() local 51 pmd = (pmd_t *)__get_free_pages(GFP_PGTABLE_KERNEL, PMD_TABLE_ORDER); in pmd_alloc_one() 52 if (likely(pmd)) in pmd_alloc_one() 53 memset ((void *)pmd, 0, PAGE_SIZE << PMD_TABLE_ORDER); in pmd_alloc_one() 54 return pmd; in pmd_alloc_one() 57 static inline void pmd_free(struct mm_struct *mm, pmd_t *pmd) in pmd_free() argument 59 free_pages((unsigned long)pmd, PMD_TABLE_ORDER); in pmd_free() [all …]
|