/linux/drivers/gpu/drm/msm/ |
H A D | msm_iommu.c | 44 static size_t calc_pgsize(struct msm_iommu_pagetable *pagetable, in calc_pgsize() argument 54 pgsizes = pagetable->pgsize_bitmap & GENMASK(__fls(size), 0); in calc_pgsize() 70 pgsizes = pagetable->pgsize_bitmap & ~GENMASK(pgsize_idx, 0); in calc_pgsize() 102 struct msm_iommu_pagetable *pagetable = to_pagetable(mmu); in msm_iommu_pagetable_unmap() local 103 struct io_pgtable_ops *ops = pagetable->pgtbl_ops; in msm_iommu_pagetable_unmap() 110 pgsize = calc_pgsize(pagetable, iova, iova, size, &count); in msm_iommu_pagetable_unmap() 127 iommu_flush_iotlb_all(to_msm_iommu(pagetable->parent)->domain); in msm_iommu_pagetable_unmap() 134 struct msm_iommu_pagetable *pagetable = to_pagetable(mmu); in msm_iommu_pagetable_map_prr() local 135 struct io_pgtable_ops *ops = pagetable->pgtbl_ops; in msm_iommu_pagetable_map_prr() 136 struct msm_iommu *iommu = to_msm_iommu(pagetable->parent); in msm_iommu_pagetable_map_prr() [all …]
|
/linux/arch/mips/mm/ |
H A 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 …]
|
/linux/arch/loongarch/mm/ |
H A D | pgtable.c | 74 unsigned long pagetable = (unsigned long)invalid_pte_table; in pmd_init() local 80 p[0] = pagetable; in pmd_init() 81 p[1] = pagetable; in pmd_init() 82 p[2] = pagetable; in pmd_init() 83 p[3] = pagetable; in pmd_init() 84 p[4] = pagetable; in pmd_init() 86 p[-3] = pagetable; in pmd_init() 87 p[-2] = pagetable; in pmd_init() 88 p[-1] = pagetable; in pmd_init() 98 unsigned long pagetable = (unsigned long)invalid_pmd_table; in pud_init() local [all …]
|
/linux/drivers/staging/media/atomisp/pci/ |
H A D | ia_css_mmu_private.h | 13 * This function sets the L1 pagetable address. 14 * After power-up of the ISP the L1 pagetable can be set. 15 * Once being set the L1 pagetable is protected against
|
/linux/arch/x86/boot/startup/ |
H A D | sme.c | 84 * more than enough pagetable pages. 89 * section is 2MB aligned to allow for simple pagetable setup using only 252 * Perform a relatively simplistic calculation of the pagetable in sme_pgtable_calc() 272 * Now calculate the added pagetable structures needed to populate in sme_pgtable_calc() 342 * pagetable structures for the encryption of the kernel in sme_encrypt_kernel() 343 * pagetable structures for workarea (in case not currently mapped) in sme_encrypt_kernel() 363 * the pagetable area. The start of the workarea is already 2MB in sme_encrypt_kernel() 372 * Set the address to the start of where newly created pagetable in sme_encrypt_kernel() 373 * structures (PGDs, PUDs and PMDs) will be allocated. New pagetable in sme_encrypt_kernel() 381 * Make sure the current pagetable structure has entries for in sme_encrypt_kernel() [all …]
|
/linux/arch/x86/xen/ |
H A 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 …]
|
/linux/include/xen/interface/hvm/ |
H A 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 */
|
/linux/drivers/iommu/ |
H A D | Kconfig | 26 menu "Generic IOMMU Pagetable Support" 28 # Selected by the actual pagetable implementations 38 Enable support for the ARM long descriptor pagetable format. 57 Enable support for the ARM Short-descriptor pagetable format. 77 Enable support for the Apple DART pagetable formats. These include
|
H A D | omap-iommu-debug.c | 240 DEFINE_SHOW_ATTRIBUTE(pagetable); 255 debugfs_create_file("pagetable", 0400, d, obj, &pagetable_fops); in omap_iommu_debugfs_add()
|
/linux/Documentation/gpu/xe/ |
H A D | xe_mm.rst | 25 Pagetable building 29 :doc: Pagetable building
|
/linux/Documentation/gpu/rfc/ |
H A D | gpusvm.rst | 38 pagetable locks/mmu notifier range lock/whatever we end up calling 60 * GPU pagetable locking 62 (rather than seqno due to wider notifiers), pagetable entries, and
|
/linux/arch/powerpc/mm/ptdump/ |
H A 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()
|
/linux/include/xen/interface/ |
H A 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
|
/linux/arch/powerpc/platforms/ps3/ |
H A D | Kconfig | 38 int "PS3 Platform pagetable size" if PS3_ADVANCED 43 tune the pagetable size on their system. The value here is
|
/linux/arch/hexagon/include/asm/ |
H A D | page.h | 61 * asm-generic/pagetable-nopmd.h and asm-generic/pagetable-nopud.h
|
/linux/drivers/gpu/drm/vmwgfx/ |
H A D | vmwgfx_mob.c | 404 * vmw_mob_pt_populate - Populate the mob pagetable 406 * @mob: Pointer to the mob the pagetable of which we want to 409 * This function allocates memory to be used for the pagetable. 446 * vmw_mob_build_pt - Build a pagetable 487 * vmw_mob_build_pt - Set up a multilevel mob pagetable
|
/linux/mm/ |
H A D | mapping_dirty_helpers.c | 11 * struct wp_walk - Private struct for pagetable walk callbacks 29 * @walk: pagetable walk callback argument 81 * @walk: pagetable walk callback argument
|
/linux/drivers/gpu/drm/xe/ |
H A D | xe_pt_walk.c | 41 /* Shared pt walk skips to the last pagetable */ in xe_pt_next() 98 /* Probably not needed yet for gpu pagetable walk. */ in xe_pt_walk_range()
|
H A D | xe_pt.c | 152 * @tile: The tile the scratch pagetable of which to use. 154 * @pt: The pagetable the bo of which to initialize. 240 * DOC: Pagetable building 380 * non-pre-existing pagetable with leaf ptes. 396 * Register this new pagetable so that it won't be recognized as in xe_pt_insert_entry() 397 * a shared pagetable by a subsequent insertion. in xe_pt_insert_entry() 605 * Prefer the compact pagetable layout for L0 if possible. Only in xe_pt_stage_bind_entry() 783 * shared pagetable. 784 * @addr: The start address within the non-shared pagetable. 785 * @end: The end address within the non-shared pagetable. [all …]
|
/linux/drivers/gpu/drm/imagination/ |
H A D | pvr_vm_mips.c | 20 * pvr_vm_mips_init() - Initialise MIPS FW pagetable 95 * pvr_vm_mips_fini() - Release MIPS FW pagetable
|
/linux/arch/x86/include/asm/ |
H A D | paravirt_types.h | 150 /* Hooks for allocating and freeing a pagetable top-level */ 155 * Hooks for allocating/releasing pagetable pages when they're 156 * attached to a pagetable 167 /* Pagetable manipulation functions */
|
/linux/include/linux/ |
H A D | mem_encrypt.h | 24 * the encryption mask from a value (e.g. when dealing with pagetable
|
/linux/arch/x86/mm/ |
H A D | init_32.c | 467 * Build a proper pagetable for the kernel mappings. Up until this 471 * This will be a pagetable constructed in arch/x86/kernel/head_32.S. 472 * The root of the pagetable will be swapper_pg_dir. 474 * In general, pagetable_init() assumes that the pagetable may already
|
/linux/drivers/gpu/drm/etnaviv/ |
H A D | etnaviv_iommu_v2.c | 33 /* M(aster) TLB aka first level pagetable */ 36 /* S(lave) TLB aka second level pagetable */
|
/linux/arch/sparc/include/asm/ |
H A D | highmem.h | 39 * pkmap region on a pagetable boundary (4MB).
|