| /kernel/linux/linux-6.6/drivers/gpu/drm/msm/ |
| D | msm_iommu.c | 36 static size_t calc_pgsize(struct msm_iommu_pagetable *pagetable, in calc_pgsize() argument 46 pgsizes = pagetable->pgsize_bitmap & GENMASK(__fls(size), 0); in calc_pgsize() 62 pgsizes = pagetable->pgsize_bitmap & ~GENMASK(pgsize_idx, 0); in calc_pgsize() 94 struct msm_iommu_pagetable *pagetable = to_pagetable(mmu); in msm_iommu_pagetable_unmap() local 95 struct io_pgtable_ops *ops = pagetable->pgtbl_ops; in msm_iommu_pagetable_unmap() 100 pgsize = calc_pgsize(pagetable, iova, iova, size, &count); in msm_iommu_pagetable_unmap() 110 iommu_flush_iotlb_all(to_msm_iommu(pagetable->parent)->domain); in msm_iommu_pagetable_unmap() 118 struct msm_iommu_pagetable *pagetable = to_pagetable(mmu); in msm_iommu_pagetable_map() local 119 struct io_pgtable_ops *ops = pagetable->pgtbl_ops; in msm_iommu_pagetable_map() 132 pgsize = calc_pgsize(pagetable, addr, phys, size, &count); in msm_iommu_pagetable_map() [all …]
|
| /kernel/linux/linux-5.10/drivers/gpu/drm/msm/ |
| D | msm_iommu.c | 35 struct msm_iommu_pagetable *pagetable = to_pagetable(mmu); in msm_iommu_pagetable_unmap() local 36 struct io_pgtable_ops *ops = pagetable->pgtbl_ops; in msm_iommu_pagetable_unmap() 46 iommu_flush_iotlb_all(to_msm_iommu(pagetable->parent)->domain); in msm_iommu_pagetable_unmap() 54 struct msm_iommu_pagetable *pagetable = to_pagetable(mmu); in msm_iommu_pagetable_map() local 55 struct io_pgtable_ops *ops = pagetable->pgtbl_ops; in msm_iommu_pagetable_map() 84 struct msm_iommu_pagetable *pagetable = to_pagetable(mmu); in msm_iommu_pagetable_destroy() local 85 struct msm_iommu *iommu = to_msm_iommu(pagetable->parent); in msm_iommu_pagetable_destroy() 87 dev_get_drvdata(pagetable->parent->dev); in msm_iommu_pagetable_destroy() 90 * If this is the last attached pagetable for the parent, in msm_iommu_pagetable_destroy() 96 free_io_pgtable_ops(pagetable->pgtbl_ops); in msm_iommu_pagetable_destroy() [all …]
|
| /kernel/linux/linux-5.10/arch/loongarch/mm/ |
| D | pgtable-64.c | 44 void pmd_init(unsigned long addr, unsigned long pagetable) in pmd_init() argument 52 p[0] = pagetable; in pmd_init() 53 p[1] = pagetable; in pmd_init() 54 p[2] = pagetable; in pmd_init() 55 p[3] = pagetable; in pmd_init() 56 p[4] = pagetable; in pmd_init() 58 p[-3] = pagetable; in pmd_init() 59 p[-2] = pagetable; in pmd_init() 60 p[-1] = pagetable; in pmd_init() 67 void pud_init(unsigned long addr, unsigned long pagetable) in pud_init() argument [all …]
|
| /kernel/linux/linux-5.10/arch/mips/mm/ |
| D | pgtable-64.c | 46 void pmd_init(unsigned long addr, unsigned long pagetable) in pmd_init() argument 54 p[0] = pagetable; in pmd_init() 55 p[1] = pagetable; in pmd_init() 56 p[2] = pagetable; in pmd_init() 57 p[3] = pagetable; in pmd_init() 58 p[4] = pagetable; in pmd_init() 60 p[-3] = pagetable; in pmd_init() 61 p[-2] = pagetable; in pmd_init() 62 p[-1] = pagetable; in pmd_init() 69 void pud_init(unsigned long addr, unsigned long pagetable) in pud_init() argument [all …]
|
| /kernel/linux/linux-6.6/arch/mips/mm/ |
| D | pgtable-64.c | 49 unsigned long pagetable = (unsigned long)invalid_pte_table; in pmd_init() local 55 p[0] = pagetable; in pmd_init() 56 p[1] = pagetable; in pmd_init() 57 p[2] = pagetable; in pmd_init() 58 p[3] = pagetable; in pmd_init() 59 p[4] = pagetable; in pmd_init() 61 p[-3] = pagetable; in pmd_init() 62 p[-2] = pagetable; in pmd_init() 63 p[-1] = pagetable; in pmd_init() 73 unsigned long pagetable = (unsigned long)invalid_pmd_table; in pud_init() local [all …]
|
| /kernel/linux/linux-6.6/arch/loongarch/mm/ |
| D | pgtable.c | 75 unsigned long pagetable = (unsigned long)invalid_pte_table; in pmd_init() local 81 p[0] = pagetable; in pmd_init() 82 p[1] = pagetable; in pmd_init() 83 p[2] = pagetable; in pmd_init() 84 p[3] = pagetable; in pmd_init() 85 p[4] = pagetable; in pmd_init() 87 p[-3] = pagetable; in pmd_init() 88 p[-2] = pagetable; in pmd_init() 89 p[-1] = pagetable; in pmd_init() 99 unsigned long pagetable = (unsigned long)invalid_pmd_table; in pud_init() local [all …]
|
| /kernel/linux/linux-6.6/arch/x86/mm/ |
| D | mem_encrypt_identity.c | 88 * more than enough pagetable pages. 93 * section is 2MB aligned to allow for simple pagetable setup using only 256 * Perform a relatively simplistic calculation of the pagetable in sme_pgtable_calc() 276 * Now calculate the added pagetable structures needed to populate in sme_pgtable_calc() 347 * pagetable structures for the encryption of the kernel in sme_encrypt_kernel() 348 * pagetable structures for workarea (in case not currently mapped) in sme_encrypt_kernel() 368 * the pagetable area. The start of the workarea is already 2MB in sme_encrypt_kernel() 377 * Set the address to the start of where newly created pagetable in sme_encrypt_kernel() 378 * structures (PGDs, PUDs and PMDs) will be allocated. New pagetable in sme_encrypt_kernel() 386 * Make sure the current pagetable structure has entries for in sme_encrypt_kernel() [all …]
|
| /kernel/linux/linux-6.6/drivers/staging/media/atomisp/pci/ |
| D | ia_css_mmu_private.h | 22 * This function sets the L1 pagetable address. 23 * After power-up of the ISP the L1 pagetable can be set. 24 * Once being set the L1 pagetable is protected against
|
| /kernel/linux/linux-5.10/drivers/staging/media/atomisp/pci/ |
| D | ia_css_mmu_private.h | 22 * This function sets the L1 pagetable address. 23 * After power-up of the ISP the L1 pagetable can be set. 24 * Once being set the L1 pagetable is protected against
|
| /kernel/linux/linux-6.6/arch/x86/xen/ |
| D | mmu_pv.c | 10 * Xen allows guests to directly update the pagetable, in a controlled 11 * fashion. In other words, the guest modifies the same pagetable 13 * a separate shadow pagetable. 21 * inserted directly into the pagetable. When creating a new 26 * The other constraint is that all pages which make up a pagetable 28 * guest updates to the pagetable. Xen strictly enforces this, and 29 * will disallow any pagetable update which will end up mapping a 30 * pagetable page RW, and will disallow using any writable page as a 31 * pagetable. 33 * Naively, when loading %cr3 with the base of a new pagetable, Xen [all …]
|
| /kernel/linux/linux-5.10/arch/x86/xen/ |
| D | mmu_pv.c | 10 * Xen allows guests to directly update the pagetable, in a controlled 11 * fashion. In other words, the guest modifies the same pagetable 13 * a separate shadow pagetable. 21 * inserted directly into the pagetable. When creating a new 26 * The other constraint is that all pages which make up a pagetable 28 * guest updates to the pagetable. Xen strictly enforces this, and 29 * will disallow any pagetable update which will end up mapping a 30 * pagetable page RW, and will disallow using any writable page as a 31 * pagetable. 33 * Naively, when loading %cr3 with the base of a new pagetable, Xen [all …]
|
| /kernel/linux/linux-5.10/arch/x86/mm/ |
| D | mem_encrypt_identity.c | 85 * more than enough pagetable pages. 90 * section is 2MB aligned to allow for simple pagetable setup using only 257 * Perform a relatively simplistic calculation of the pagetable in sme_pgtable_calc() 277 * Now calculate the added pagetable structures needed to populate in sme_pgtable_calc() 350 * pagetable structures for the encryption of the kernel in sme_encrypt_kernel() 351 * pagetable structures for workarea (in case not currently mapped) in sme_encrypt_kernel() 371 * the pagetable area. The start of the workarea is already 2MB in sme_encrypt_kernel() 380 * Set the address to the start of where newly created pagetable in sme_encrypt_kernel() 381 * structures (PGDs, PUDs and PMDs) will be allocated. New pagetable in sme_encrypt_kernel() 389 * Make sure the current pagetable structure has entries for in sme_encrypt_kernel() [all …]
|
| /kernel/linux/linux-6.6/include/xen/interface/hvm/ |
| D | hvm_op.h | 19 /* Hint from PV drivers for pagetable destruction. */ 22 /* Domain with a pagetable about to be destroyed. */ 24 /* guest physical address of the toplevel pagetable dying */
|
| /kernel/linux/linux-5.10/include/xen/interface/hvm/ |
| D | hvm_op.h | 37 /* Hint from PV drivers for pagetable destruction. */ 40 /* Domain with a pagetable about to be destroyed. */ 42 /* guest physical address of the toplevel pagetable dying */
|
| /kernel/linux/linux-6.6/drivers/iommu/ |
| D | Kconfig | 22 menu "Generic IOMMU Pagetable Support" 24 # Selected by the actual pagetable implementations 34 Enable support for the ARM long descriptor pagetable format. 53 Enable support for the ARM Short-descriptor pagetable format. 73 Enable support for the Apple DART pagetable formats. These include
|
| /kernel/linux/linux-5.10/arch/powerpc/mm/ptdump/ |
| D | hashpagetable.c | 6 * the hash pagetable, along with their flags to 454 * Traverse the linux pagetable structure and dump pages that are in in walk_pagetables() 455 * the hash pagetable. in walk_pagetables() 472 * that are in the hash pagetable. in walk_linearmapping() 489 * pagetable. in walk_vmemmap() 521 * dump pages that are in the hash pagetable. in ptdump_show()
|
| /kernel/linux/linux-6.6/arch/powerpc/mm/ptdump/ |
| D | hashpagetable.c | 6 * the hash pagetable, along with their flags to 457 * Traverse the linux pagetable structure and dump pages that are in in walk_pagetables() 458 * the hash pagetable. in walk_pagetables() 475 * that are in the hash pagetable. in walk_linearmapping() 492 * pagetable. in walk_vmemmap() 524 * dump pages that are in the hash pagetable. in ptdump_show()
|
| /kernel/linux/linux-5.10/drivers/iommu/ |
| D | Kconfig | 26 menu "Generic IOMMU Pagetable Support" 28 # Selected by the actual pagetable implementations 37 Enable support for the ARM long descriptor pagetable format. 56 Enable support for the ARM Short-descriptor pagetable format.
|
| /kernel/linux/linux-5.10/include/xen/interface/ |
| D | xen.h | 140 * @foreigndom[31:16]: PFD, the expected owner of pagetable pages referenced 159 * pages that make up a pagetable must be mapped read-only in the guest. 160 * This prevents uncontrolled guest updates to the pagetable. Xen strictly 161 * enforces this, and will disallow any pagetable update which will end up 162 * mapping pagetable page RW, and will disallow using any writable page as a 163 * pagetable. In practice it means that when constructing a page table for a 175 * operation on PGD (L4) pagetable entries that have a PUD (L3) entry. 190 * pagetable MUST not be in use (meaning that the cr3 is not set to it). 224 * HYPERVISOR_mmuext_op serve as mechanism to set a pagetable to be 4MB
|
| /kernel/linux/linux-6.6/include/xen/interface/ |
| D | xen.h | 123 * @foreigndom[31:16]: PFD, the expected owner of pagetable pages referenced 142 * pages that make up a pagetable must be mapped read-only in the guest. 143 * This prevents uncontrolled guest updates to the pagetable. Xen strictly 144 * enforces this, and will disallow any pagetable update which will end up 145 * mapping pagetable page RW, and will disallow using any writable page as a 146 * pagetable. In practice it means that when constructing a page table for a 158 * operation on PGD (L4) pagetable entries that have a PUD (L3) entry. 173 * pagetable MUST not be in use (meaning that the cr3 is not set to it). 207 * HYPERVISOR_mmuext_op serve as mechanism to set a pagetable to be 4MB
|
| /kernel/linux/linux-6.6/Documentation/userspace-api/ |
| D | iommufd.rst | 100 pagetable already exists then it is reused for the attachment. Otherwise a 101 new pagetable object and iommu_domain is created. Successful completion of 132 target pagetable to be attached to by a device. Though currently there are
|
| /kernel/linux/linux-5.10/arch/powerpc/platforms/ps3/ |
| D | Kconfig | 37 int "PS3 Platform pagetable size" if PS3_ADVANCED 42 tune the pagetable size on their system. The value here is
|
| /kernel/linux/linux-6.6/arch/hexagon/include/asm/ |
| D | page.h | 67 * asm-generic/pagetable-nopmd.h and asm-generic/pagetable-nopud.h
|
| /kernel/linux/linux-6.6/arch/arm64/include/asm/ |
| D | kernel-pgtable.h | 44 * For each pagetable level of the swapper, we know that the shift will 47 * KASLR can increase the number of pagetable entries by 1, so we make
|
| /kernel/linux/linux-6.6/arch/powerpc/platforms/ps3/ |
| D | Kconfig | 38 int "PS3 Platform pagetable size" if PS3_ADVANCED 43 tune the pagetable size on their system. The value here is
|