Home
last modified time | relevance | path

Searched refs:pgtable (Results 1 – 25 of 49) sorted by relevance

12

/Linux-v5.10/mm/
Dpgtable-generic.c162 pgtable_t pgtable) in pgtable_trans_huge_deposit() argument
168 INIT_LIST_HEAD(&pgtable->lru); in pgtable_trans_huge_deposit()
170 list_add(&pgtable->lru, &pmd_huge_pte(mm, pmdp)->lru); in pgtable_trans_huge_deposit()
171 pmd_huge_pte(mm, pmdp) = pgtable; in pgtable_trans_huge_deposit()
179 pgtable_t pgtable; in pgtable_trans_huge_withdraw() local
184 pgtable = pmd_huge_pte(mm, pmdp); in pgtable_trans_huge_withdraw()
185 pmd_huge_pte(mm, pmdp) = list_first_entry_or_null(&pgtable->lru, in pgtable_trans_huge_withdraw()
188 list_del(&pgtable->lru); in pgtable_trans_huge_withdraw()
189 return pgtable; in pgtable_trans_huge_withdraw()
Dhuge_memory.c569 pgtable_t pgtable; in __do_huge_pmd_anonymous_page() local
583 pgtable = pte_alloc_one(vma->vm_mm); in __do_huge_pmd_anonymous_page()
584 if (unlikely(!pgtable)) { in __do_huge_pmd_anonymous_page()
613 pte_free(vma->vm_mm, pgtable); in __do_huge_pmd_anonymous_page()
623 pgtable_trans_huge_deposit(vma->vm_mm, vmf->pmd, pgtable); in __do_huge_pmd_anonymous_page()
636 if (pgtable) in __do_huge_pmd_anonymous_page()
637 pte_free(vma->vm_mm, pgtable); in __do_huge_pmd_anonymous_page()
679 static bool set_huge_zero_page(pgtable_t pgtable, struct mm_struct *mm, in set_huge_zero_page() argument
688 if (pgtable) in set_huge_zero_page()
689 pgtable_trans_huge_deposit(mm, pmd, pgtable); in set_huge_zero_page()
[all …]
/Linux-v5.10/arch/sparc/mm/
Dtlb.c264 pgtable_t pgtable) in pgtable_trans_huge_deposit() argument
266 struct list_head *lh = (struct list_head *) pgtable; in pgtable_trans_huge_deposit()
275 pmd_huge_pte(mm, pmdp) = pgtable; in pgtable_trans_huge_deposit()
281 pgtable_t pgtable; in pgtable_trans_huge_withdraw() local
286 pgtable = pmd_huge_pte(mm, pmdp); in pgtable_trans_huge_withdraw()
287 lh = (struct list_head *) pgtable; in pgtable_trans_huge_withdraw()
294 pte_val(pgtable[0]) = 0; in pgtable_trans_huge_withdraw()
295 pte_val(pgtable[1]) = 0; in pgtable_trans_huge_withdraw()
297 return pgtable; in pgtable_trans_huge_withdraw()
/Linux-v5.10/drivers/gpu/drm/etnaviv/
Detnaviv_iommu.c93 u32 pgtable; in etnaviv_iommuv1_restore() local
103 pgtable = (u32)v1_context->pgtable_dma; in etnaviv_iommuv1_restore()
105 gpu_write(gpu, VIVS_MC_MMU_FE_PAGE_TABLE, pgtable); in etnaviv_iommuv1_restore()
106 gpu_write(gpu, VIVS_MC_MMU_TX_PAGE_TABLE, pgtable); in etnaviv_iommuv1_restore()
107 gpu_write(gpu, VIVS_MC_MMU_PE_PAGE_TABLE, pgtable); in etnaviv_iommuv1_restore()
108 gpu_write(gpu, VIVS_MC_MMU_PEZ_PAGE_TABLE, pgtable); in etnaviv_iommuv1_restore()
109 gpu_write(gpu, VIVS_MC_MMU_RA_PAGE_TABLE, pgtable); in etnaviv_iommuv1_restore()
/Linux-v5.10/arch/powerpc/mm/book3s64/
Dhash_pgtable.c267 pgtable_t pgtable) in hash__pgtable_trans_huge_deposit() argument
276 *pgtable_slot = pgtable; in hash__pgtable_trans_huge_deposit()
288 pgtable_t pgtable; in hash__pgtable_trans_huge_withdraw() local
294 pgtable = *pgtable_slot; in hash__pgtable_trans_huge_withdraw()
303 memset(pgtable, 0, PTE_FRAG_SIZE); in hash__pgtable_trans_huge_withdraw()
304 return pgtable; in hash__pgtable_trans_huge_withdraw()
348 pgtable_t pgtable; in hash__pmdp_huge_get_and_clear() local
360 pgtable = *pgtable_slot; in hash__pmdp_huge_get_and_clear()
365 memset(pgtable, 0, PTE_FRAG_SIZE); in hash__pmdp_huge_get_and_clear()
Dradix_pgtable.c1021 pgtable_t pgtable) in radix__pgtable_trans_huge_deposit() argument
1023 struct list_head *lh = (struct list_head *) pgtable; in radix__pgtable_trans_huge_deposit()
1032 pmd_huge_pte(mm, pmdp) = pgtable; in radix__pgtable_trans_huge_deposit()
1038 pgtable_t pgtable; in radix__pgtable_trans_huge_withdraw() local
1044 pgtable = pmd_huge_pte(mm, pmdp); in radix__pgtable_trans_huge_withdraw()
1045 lh = (struct list_head *) pgtable; in radix__pgtable_trans_huge_withdraw()
1052 ptep = (pte_t *) pgtable; in radix__pgtable_trans_huge_withdraw()
1056 return pgtable; in radix__pgtable_trans_huge_withdraw()
/Linux-v5.10/sound/core/
Dsgbuf.c62 struct page **pgtable; in snd_malloc_sgbuf_pages() local
84 pgtable = kcalloc(sgbuf->tblsize, sizeof(*pgtable), GFP_KERNEL); in snd_malloc_sgbuf_pages()
85 if (!pgtable) in snd_malloc_sgbuf_pages()
87 sgbuf->page_table = pgtable; in snd_malloc_sgbuf_pages()
113 *pgtable++ = virt_to_page(tmpb.area); in snd_malloc_sgbuf_pages()
/Linux-v5.10/drivers/iommu/
Dexynos-iommu.c183 static sysmmu_pte_t *section_entry(sysmmu_pte_t *pgtable, sysmmu_iova_t iova) in section_entry() argument
185 return pgtable + lv1ent_offset(iova); in section_entry()
248 sysmmu_pte_t *pgtable; /* lv1 page table, 16KB */ member
275 phys_addr_t pgtable; /* assigned page table structure */ member
395 dev_dbg(data->sysmmu, "Page table base: %pa\n", &data->pgtable); in show_fault_information()
396 ent = section_entry(phys_to_virt(data->pgtable), fault_addr); in show_fault_information()
500 __sysmmu_set_ptbase(data, data->pgtable); in __sysmmu_enable()
753 domain->pgtable = (sysmmu_pte_t *)__get_free_pages(GFP_KERNEL, 2); in exynos_iommu_domain_alloc()
754 if (!domain->pgtable) in exynos_iommu_domain_alloc()
763 domain->pgtable[i] = ZERO_LV2LINK; in exynos_iommu_domain_alloc()
[all …]
DMakefile8 obj-$(CONFIG_IOMMU_IO_PGTABLE) += io-pgtable.o
9 obj-$(CONFIG_IOMMU_IO_PGTABLE_ARMV7S) += io-pgtable-arm-v7s.o
10 obj-$(CONFIG_IOMMU_IO_PGTABLE_LPAE) += io-pgtable-arm.o
/Linux-v5.10/arch/m68k/include/asm/
Dmcf_pgalloc.h37 static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgtable, in __pte_free_tlb() argument
40 struct page *page = virt_to_page(pgtable); in __pte_free_tlb()
64 static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) in pte_free() argument
66 struct page *page = virt_to_page(pgtable); in pte_free()
Dmotorola_pgalloc.h42 static inline void pte_free(struct mm_struct *mm, pgtable_t pgtable) in pte_free() argument
44 free_pointer_table(pgtable, TABLE_PTE); in pte_free()
47 static inline void __pte_free_tlb(struct mmu_gather *tlb, pgtable_t pgtable, in __pte_free_tlb() argument
50 free_pointer_table(pgtable, TABLE_PTE); in __pte_free_tlb()
/Linux-v5.10/drivers/iommu/amd/
Diommu.c103 struct domain_pgtable *pgtable);
156 struct domain_pgtable *pgtable) in amd_iommu_domain_get_pgtable() argument
160 pgtable->root = (u64 *)(pt_root & PAGE_MASK); in amd_iommu_domain_get_pgtable()
161 pgtable->mode = pt_root & 7; /* lowest 3 bits encode pgtable mode */ in amd_iommu_domain_get_pgtable()
1475 static void free_pagetable(struct domain_pgtable *pgtable) in free_pagetable() argument
1480 if (pgtable->mode == PAGE_MODE_NONE) in free_pagetable()
1483 BUG_ON(pgtable->mode < PAGE_MODE_NONE || in free_pagetable()
1484 pgtable->mode > PAGE_MODE_6_LEVEL); in free_pagetable()
1486 root = (unsigned long)pgtable->root; in free_pagetable()
1487 freelist = free_sub_pt(root, pgtable->mode, freelist); in free_pagetable()
[all …]
/Linux-v5.10/arch/mips/mm/
DMakefile14 obj-y += pgtable.o
25 obj-$(CONFIG_32BIT) += ioremap.o pgtable-32.o
26 obj-$(CONFIG_64BIT) += ioremap64.o pgtable-64.o
/Linux-v5.10/arch/x86/boot/compressed/
Dpgtable_64.c191 void cleanup_trampoline(void *pgtable) in cleanup_trampoline() argument
202 memcpy(pgtable, trampoline_pgtable, PAGE_SIZE); in cleanup_trampoline()
203 native_write_cr3((unsigned long)pgtable); in cleanup_trampoline()
Dvmlinux.lds.S63 .pgtable : {
65 *(.pgtable) argument
Dhead_64.S182 leal rva(pgtable)(%ebx), %edi
188 leal rva(pgtable + 0)(%ebx), %edi
194 leal rva(pgtable + 0x1000)(%ebx), %edi
205 leal rva(pgtable + 0x2000)(%ebx), %edi
216 leal rva(pgtable)(%ebx), %eax
806 SYM_DATA_LOCAL(pgtable, .fill BOOT_PGT_SIZE, 1, 0)
/Linux-v5.10/arch/arc/mm/
Dtlb.c643 pgtable_t pgtable) in pgtable_trans_huge_deposit() argument
645 struct list_head *lh = (struct list_head *) pgtable; in pgtable_trans_huge_deposit()
654 pmd_huge_pte(mm, pmdp) = pgtable; in pgtable_trans_huge_deposit()
660 pgtable_t pgtable; in pgtable_trans_huge_withdraw() local
664 pgtable = pmd_huge_pte(mm, pmdp); in pgtable_trans_huge_withdraw()
665 lh = (struct list_head *) pgtable; in pgtable_trans_huge_withdraw()
673 pte_val(pgtable[0]) = 0; in pgtable_trans_huge_withdraw()
674 pte_val(pgtable[1]) = 0; in pgtable_trans_huge_withdraw()
676 return pgtable; in pgtable_trans_huge_withdraw()
/Linux-v5.10/Documentation/features/debug/debug-vm-pgtable/
Darch-support.txt2 # Feature name: debug-vm-pgtable
4 # description: arch supports pgtable tests for semantics compliance
/Linux-v5.10/arch/powerpc/mm/
DMakefile8 obj-y := fault.o mem.o pgtable.o mmap.o maccess.o \
10 pgtable-frag.o ioremap.o ioremap_$(BITS).o \
/Linux-v5.10/arch/powerpc/kvm/
Dbook3s_64_mmu_radix.c535 if (kvm->arch.pgtable) { in kvmppc_free_radix()
536 kvmppc_free_pgtable_radix(kvm, kvm->arch.pgtable, in kvmppc_free_radix()
538 pgd_free(kvm->mm, kvm->arch.pgtable); in kvmppc_free_radix()
539 kvm->arch.pgtable = NULL; in kvmppc_free_radix()
584 int kvmppc_create_pte(struct kvm *kvm, pgd_t *pgtable, pte_t pte, in kvmppc_create_pte() argument
597 pgd = pgtable + pgd_index(gpa); in kvmppc_create_pte()
890 ret = kvmppc_create_pte(kvm, kvm->arch.pgtable, pte, gpa, level, in kvmppc_book3s_instantiate_page()
1212 kvm->arch.pgtable = pgd_alloc(kvm->mm); in kvmppc_init_vm_radix()
1213 if (!kvm->arch.pgtable) in kvmppc_init_vm_radix()
1327 pgt = kvm->arch.pgtable; in debugfs_radix_read()
/Linux-v5.10/arch/microblaze/mm/
DMakefile8 obj-$(CONFIG_MMU) += pgtable.o mmu_context.o fault.o
/Linux-v5.10/arch/arm64/kvm/hyp/
DMakefile13 obj-$(CONFIG_KVM) += vhe/ nvhe/ pgtable.o smccc_wa.o
/Linux-v5.10/arch/nios2/mm/
DMakefile13 obj-y += pgtable.o
/Linux-v5.10/arch/s390/mm/
DMakefile7 obj-y += page-states.o pageattr.o pgtable.o pgalloc.o
Dpgtable.c536 pgtable_t pgtable) in pgtable_trans_huge_deposit() argument
538 struct list_head *lh = (struct list_head *) pgtable; in pgtable_trans_huge_deposit()
547 pmd_huge_pte(mm, pmdp) = pgtable; in pgtable_trans_huge_deposit()
553 pgtable_t pgtable; in pgtable_trans_huge_withdraw() local
559 pgtable = pmd_huge_pte(mm, pmdp); in pgtable_trans_huge_withdraw()
560 lh = (struct list_head *) pgtable; in pgtable_trans_huge_withdraw()
567 ptep = (pte_t *) pgtable; in pgtable_trans_huge_withdraw()
571 return pgtable; in pgtable_trans_huge_withdraw()

12