Home
last modified time | relevance | path

Searched full:mapping (Results 1 – 25 of 3680) sorted by relevance

12345678910>>...148

/linux/include/linux/
H A Dpagemap.h21 unsigned long invalidate_mapping_pages(struct address_space *mapping,
30 int invalidate_inode_pages2(struct address_space *mapping);
31 int invalidate_inode_pages2_range(struct address_space *mapping,
35 int filemap_invalidate_pages(struct address_space *mapping,
41 int filemap_flush_nr(struct address_space *mapping, long *nr_to_write);
42 int filemap_fdatawait_keep_errors(struct address_space *mapping);
44 int filemap_fdatawait_range_keep_errors(struct address_space *mapping,
49 static inline int filemap_fdatawait(struct address_space *mapping) in filemap_fdatawait() argument
51 return filemap_fdatawait_range(mapping, 0, LLONG_MAX); in filemap_fdatawait()
55 int filemap_write_and_wait_range(struct address_space *mapping,
[all …]
H A Dio-mapping.h17 * The io_mapping mechanism provides an abstraction for mapping
20 * See Documentation/driver-api/io-mapping.rst
35 * For small address space machines, mapping large objects
58 io_mapping_fini(struct io_mapping *mapping) in io_mapping_fini() argument
60 iomap_free(mapping->base, mapping->size); in io_mapping_fini()
65 io_mapping_map_atomic_wc(struct io_mapping *mapping, in io_mapping_map_atomic_wc() argument
70 BUG_ON(offset >= mapping->size); in io_mapping_map_atomic_wc()
71 phys_addr = mapping->base + offset; in io_mapping_map_atomic_wc()
77 return __iomap_local_pfn_prot(PHYS_PFN(phys_addr), mapping->prot); in io_mapping_map_atomic_wc()
92 io_mapping_map_local_wc(struct io_mapping *mapping, unsigned long offset) in io_mapping_map_local_wc() argument
[all …]
/linux/mm/
H A Dtruncate.c26 static void clear_shadow_entries(struct address_space *mapping, in clear_shadow_entries() argument
29 XA_STATE(xas, &mapping->i_pages, start); in clear_shadow_entries()
33 if (shmem_mapping(mapping) || dax_mapping(mapping)) in clear_shadow_entries()
38 spin_lock(&mapping->host->i_lock); in clear_shadow_entries()
48 if (mapping_shrinkable(mapping)) in clear_shadow_entries()
49 inode_lru_list_add(mapping->host); in clear_shadow_entries()
50 spin_unlock(&mapping->host->i_lock); in clear_shadow_entries()
60 static void truncate_folio_batch_exceptionals(struct address_space *mapping, in truncate_folio_batch_exceptionals() argument
63 XA_STATE(xas, &mapping in truncate_folio_batch_exceptionals()
170 truncate_inode_folio(struct address_space * mapping,struct folio * folio) truncate_inode_folio() argument
299 generic_error_remove_folio(struct address_space * mapping,struct folio * folio) generic_error_remove_folio() argument
325 mapping_evict_folio(struct address_space * mapping,struct folio * folio) mapping_evict_folio() argument
366 truncate_inode_pages_range(struct address_space * mapping,loff_t lstart,uoff_t lend) truncate_inode_pages_range() argument
483 truncate_inode_pages(struct address_space * mapping,loff_t lstart) truncate_inode_pages() argument
498 truncate_inode_pages_final(struct address_space * mapping) truncate_inode_pages_final() argument
534 mapping_try_invalidate(struct address_space * mapping,pgoff_t start,pgoff_t end,unsigned long * nr_failed) mapping_try_invalidate() argument
599 invalidate_mapping_pages(struct address_space * mapping,pgoff_t start,pgoff_t end) invalidate_mapping_pages() argument
606 folio_launder(struct address_space * mapping,struct folio * folio) folio_launder() argument
622 folio_unmap_invalidate(struct address_space * mapping,struct folio * folio,gfp_t gfp) folio_unmap_invalidate() argument
672 invalidate_inode_pages2_range(struct address_space * mapping,pgoff_t start,pgoff_t end) invalidate_inode_pages2_range() argument
758 invalidate_inode_pages2(struct address_space * mapping) invalidate_inode_pages2() argument
781 struct address_space *mapping = inode->i_mapping; truncate_pagecache() local
902 struct address_space *mapping = inode->i_mapping; truncate_pagecache_range() local
[all...]
H A Dfilemap.c129 static void page_cache_delete(struct address_space *mapping, in page_cache_delete() argument
132 XA_STATE(xas, &mapping->i_pages, folio->index); in page_cache_delete()
135 mapping_set_update(&xas, mapping); in page_cache_delete()
145 folio->mapping = NULL; in page_cache_delete()
147 mapping->nrpages -= nr; in page_cache_delete()
150 static void filemap_unaccount_folio(struct address_space *mapping, in filemap_unaccount_folio() argument
163 if (mapping_exiting(mapping) && !folio_test_large(folio)) { in filemap_unaccount_folio()
192 filemap_nr_thps_dec(mapping); in filemap_unaccount_folio()
194 if (test_bit(AS_KERNEL_FILE, &folio->mapping->flags)) in filemap_unaccount_folio()
213 mapping_can_writeback(mapping))) in filemap_unaccount_folio()
224 struct address_space *mapping = folio->mapping; __filemap_remove_folio() local
231 filemap_free_folio(struct address_space * mapping,struct folio * folio) filemap_free_folio() argument
252 struct address_space *mapping = folio->mapping; filemap_remove_folio() local
279 page_cache_delete_batch(struct address_space * mapping,struct folio_batch * fbatch) page_cache_delete_batch() argument
320 delete_from_page_cache_batch(struct address_space * mapping,struct folio_batch * fbatch) delete_from_page_cache_batch() argument
346 filemap_check_errors(struct address_space * mapping) filemap_check_errors() argument
360 filemap_check_and_keep_errors(struct address_space * mapping) filemap_check_and_keep_errors() argument
370 filemap_writeback(struct address_space * mapping,loff_t start,loff_t end,enum writeback_sync_modes sync_mode,long * nr_to_write) filemap_writeback() argument
409 filemap_fdatawrite_range(struct address_space * mapping,loff_t start,loff_t end) filemap_fdatawrite_range() argument
416 filemap_fdatawrite(struct address_space * mapping) filemap_fdatawrite() argument
433 filemap_flush_range(struct address_space * mapping,loff_t start,loff_t end) filemap_flush_range() argument
449 filemap_flush(struct address_space * mapping) filemap_flush() argument
460 filemap_flush_nr(struct address_space * mapping,long * nr_to_write) filemap_flush_nr() argument
479 filemap_range_has_page(struct address_space * mapping,loff_t start_byte,loff_t end_byte) filemap_range_has_page() argument
510 __filemap_fdatawait_range(struct address_space * mapping,loff_t start_byte,loff_t end_byte) __filemap_fdatawait_range() argument
555 filemap_fdatawait_range(struct address_space * mapping,loff_t start_byte,loff_t end_byte) filemap_fdatawait_range() argument
577 filemap_fdatawait_range_keep_errors(struct address_space * mapping,loff_t start_byte,loff_t end_byte) filemap_fdatawait_range_keep_errors() argument
603 struct address_space *mapping = file->f_mapping; file_fdatawait_range() local
624 filemap_fdatawait_keep_errors(struct address_space * mapping) filemap_fdatawait_keep_errors() argument
632 mapping_needs_writeback(struct address_space * mapping) mapping_needs_writeback() argument
637 filemap_range_has_writeback(struct address_space * mapping,loff_t start_byte,loff_t end_byte) filemap_range_has_writeback() argument
675 filemap_write_and_wait_range(struct address_space * mapping,loff_t lstart,loff_t lend) filemap_write_and_wait_range() argument
701 __filemap_set_wb_err(struct address_space * mapping,int err) __filemap_set_wb_err() argument
737 struct address_space *mapping = file->f_mapping; file_check_and_advance_wb_err() local
780 struct address_space *mapping = file->f_mapping; file_write_and_wait_range() local
813 struct address_space *mapping = old->mapping; replace_page_cache_folio() local
848 __filemap_add_folio(struct address_space * mapping,struct folio * folio,pgoff_t index,gfp_t gfp,void ** shadowp) __filemap_add_folio() argument
949 filemap_add_folio(struct address_space * mapping,struct folio * folio,pgoff_t index,gfp_t gfp) filemap_add_folio() argument
1605 struct address_space *mapping = folio->mapping; filemap_end_dropbehind() local
1806 page_cache_next_miss(struct address_space * mapping,pgoff_t index,unsigned long max_scan) page_cache_next_miss() argument
1843 page_cache_prev_miss(struct address_space * mapping,pgoff_t index,unsigned long max_scan) page_cache_prev_miss() argument
1892 filemap_get_entry(struct address_space * mapping,pgoff_t index) filemap_get_entry() argument
1940 __filemap_get_folio_mpol(struct address_space * mapping,pgoff_t index,fgf_t fgp_flags,gfp_t gfp,struct mempolicy * policy) __filemap_get_folio_mpol() argument
2115 find_get_entries(struct address_space * mapping,pgoff_t * start,pgoff_t end,struct folio_batch * fbatch,pgoff_t * indices) find_get_entries() argument
2164 find_lock_entries(struct address_space * mapping,pgoff_t * start,pgoff_t end,struct folio_batch * fbatch,pgoff_t * indices) find_lock_entries() argument
2232 filemap_get_folios(struct address_space * mapping,pgoff_t * start,pgoff_t end,struct folio_batch * fbatch) filemap_get_folios() argument
2254 filemap_get_folios_contig(struct address_space * mapping,pgoff_t * start,pgoff_t end,struct folio_batch * fbatch) filemap_get_folios_contig() argument
2330 filemap_get_folios_tag(struct address_space * mapping,pgoff_t * start,pgoff_t end,xa_mark_t tag,struct folio_batch * fbatch) filemap_get_folios_tag() argument
2385 filemap_get_folios_dirty(struct address_space * mapping,pgoff_t * start,pgoff_t end,struct folio_batch * fbatch) filemap_get_folios_dirty() argument
2455 filemap_get_read_batch(struct address_space * mapping,pgoff_t index,pgoff_t max,struct folio_batch * fbatch) filemap_get_read_batch() argument
2517 filemap_range_uptodate(struct address_space * mapping,loff_t pos,size_t count,struct folio * folio,bool need_uptodate) filemap_range_uptodate() argument
2545 filemap_update_page(struct kiocb * iocb,struct address_space * mapping,size_t count,struct folio * folio,bool need_uptodate) filemap_update_page() argument
2602 struct address_space *mapping = iocb->ki_filp->f_mapping; filemap_create_folio() local
2654 filemap_readahead(struct kiocb * iocb,struct file * file,struct address_space * mapping,struct folio * folio,pgoff_t last_index) filemap_readahead() argument
2671 struct address_space *mapping = filp->f_mapping; filemap_get_pages() local
2773 struct address_space *mapping = filp->f_mapping; filemap_read() local
2885 struct address_space *mapping = iocb->ki_filp->f_mapping; kiocb_write_and_wait() local
2899 filemap_invalidate_pages(struct address_space * mapping,loff_t pos,loff_t end,bool nowait) filemap_invalidate_pages() argument
2926 struct address_space *mapping = iocb->ki_filp->f_mapping; kiocb_invalidate_pages() local
2966 struct address_space *mapping = file->f_mapping; generic_file_read_iter() local
3147 folio_seek_hole_data(struct xa_state * xas,struct address_space * mapping,struct folio * folio,loff_t start,loff_t end,bool seek_data) folio_seek_hole_data() argument
3204 mapping_seek_hole_data(struct address_space * mapping,loff_t start,loff_t end,int whence) mapping_seek_hole_data() argument
3309 struct address_space *mapping = file->f_mapping; do_sync_mmap_readahead() local
3517 struct address_space *mapping = file->f_mapping; filemap_fault() local
3702 next_uptodate_folio(struct xa_state * xas,struct address_space * mapping,pgoff_t end_pgoff) next_uptodate_folio() argument
3752 struct address_space *mapping = folio->mapping; filemap_map_folio_range() local
3876 struct address_space *mapping = file->f_mapping; filemap_map_pages() local
3958 struct address_space *mapping = vmf->vma->vm_file->f_mapping; filemap_page_mkwrite() local
3992 struct address_space *mapping = file->f_mapping; generic_file_mmap() local
4004 struct address_space *mapping = file->f_mapping; generic_file_mmap_prepare() local
4058 do_read_cache_folio(struct address_space * mapping,pgoff_t index,filler_t filler,struct file * file,gfp_t gfp) do_read_cache_folio() argument
4135 read_cache_folio(struct address_space * mapping,pgoff_t index,filler_t filler,struct file * file) read_cache_folio() argument
4160 mapping_read_folio_gfp(struct address_space * mapping,pgoff_t index,gfp_t gfp) mapping_read_folio_gfp() argument
4167 do_read_cache_page(struct address_space * mapping,pgoff_t index,filler_t * filler,struct file * file,gfp_t gfp) do_read_cache_page() argument
4178 read_cache_page(struct address_space * mapping,pgoff_t index,filler_t * filler,struct file * file) read_cache_page() argument
4201 read_cache_page_gfp(struct address_space * mapping,pgoff_t index,gfp_t gfp) read_cache_page_gfp() argument
4231 struct address_space *mapping = iocb->ki_filp->f_mapping; kiocb_invalidate_post_direct_write() local
4243 struct address_space *mapping = iocb->ki_filp->f_mapping; generic_file_direct_write() local
4300 struct address_space *mapping = file->f_mapping; generic_perform_write() local
4414 struct address_space *mapping = file->f_mapping; __generic_file_write_iter() local
4495 struct address_space * const mapping = folio->mapping; filemap_release_folio() local
4525 struct address_space *mapping = inode->i_mapping; filemap_invalidate_inode() local
4568 filemap_cachestat(struct address_space * mapping,pgoff_t first_index,pgoff_t last_index,struct cachestat * cs) filemap_cachestat() argument
4717 struct address_space *mapping; SYSCALL_DEFINE4() local
[all...]
H A Dreadahead.c142 file_ra_state_init(struct file_ra_state *ra, struct address_space *mapping) in file_ra_state_init() argument
144 ra->ra_pages = inode_to_bdi(mapping->host)->ra_pages; in file_ra_state_init()
151 const struct address_space_operations *aops = rac->mapping->a_ops; in read_pages()
207 * Context: File is referenced by caller, and ractl->mapping->invalidate_lock
214 struct address_space *mapping = ractl->mapping; in page_cache_ra_unbounded()
216 gfp_t gfp_mask = readahead_gfp_mask(mapping); in page_cache_ra_unbounded()
218 unsigned int min_nrpages = mapping_min_folio_nrpages(mapping); in page_cache_ra_unbounded()
227 * filesystems already specify __GFP_NOFS in their mapping's in page_cache_ra_unbounded()
232 lockdep_assert_held(&mapping in page_cache_ra_unbounded()
213 struct address_space *mapping = ractl->mapping; page_cache_ra_unbounded() local
342 struct address_space *mapping = ractl->mapping; force_page_cache_ra() local
467 struct address_space *mapping = ractl->mapping; page_cache_ra_order() local
766 struct address_space *mapping = ractl->mapping; readahead_expand() local
[all...]
/linux/tools/testing/selftests/arm64/mte/
H A Dcheck_mmap_options.c47 int mapping; member
113 static int check_anonymous_memory_mapping(int mem_type, int mode, int mapping, in check_anonymous_memory_mapping() argument
126 map_ptr = (char *)mte_allocate_memory(map_size, mem_type, mapping, false); in check_anonymous_memory_mapping()
148 static int check_file_memory_mapping(int mem_type, int mode, int mapping, in check_file_memory_mapping() argument
166 map_ptr = (char *)mte_allocate_file_memory(map_size, mem_type, mapping, false, fd); in check_file_memory_mapping()
191 static int check_clear_prot_mte_flag(int mem_type, int mode, int mapping, int atag_check) in check_clear_prot_mte_flag() argument
201 ptr = (char *)mte_allocate_memory_tag_range(sizes[run], mem_type, mapping, in check_clear_prot_mte_flag()
222 ptr = (char *)mte_allocate_file_memory_tag_range(sizes[run], mem_type, mapping, in check_clear_prot_mte_flag()
300 switch (tc->mapping) { in format_test_name()
337 "Check %s with %s mapping, %s mode, %s memory and %s (%s)\n", in format_test_name()
[all …]
/linux/arch/arm/mm/
H A Ddma-mapping.c3 * linux/arch/arm/mm/dma-mapping.c
7 * DMA uncached mapping support.
290 * Clear previous low-memory mapping to ensure that the in dma_contiguous_remap()
603 * Free a buffer as defined by the above mapping.
677 * Use the driver DMA support - see dma-mapping.h (dma_sync_*)
752 static int extend_iommu_mapping(struct dma_iommu_mapping *mapping);
754 static inline dma_addr_t __alloc_iova(struct dma_iommu_mapping *mapping, in __alloc_iova() argument
760 size_t mapping_size = mapping->bits << PAGE_SHIFT; in __alloc_iova()
771 spin_lock_irqsave(&mapping->lock, flags); in __alloc_iova()
772 for (i = 0; i < mapping->nr_bitmaps; i++) { in __alloc_iova()
[all …]
H A Dflush.c199 void __flush_dcache_folio(struct address_space *mapping, struct folio *folio) in __flush_dcache_folio() argument
202 * Writeback any data associated with the kernel mapping of this in __flush_dcache_folio()
204 * coherent with the kernels mapping. in __flush_dcache_folio()
234 if (mapping && cache_is_vipt_aliasing()) in __flush_dcache_folio()
238 static void __flush_dcache_aliases(struct address_space *mapping, struct folio *folio) in __flush_dcache_aliases() argument
248 * - aliasing VIPT: we only need to find one mapping of this page. in __flush_dcache_aliases()
253 flush_dcache_mmap_lock(mapping); in __flush_dcache_aliases()
254 vma_interval_tree_foreach(vma, &mapping->i_mmap, pgoff, pgoff_end) { in __flush_dcache_aliases()
281 flush_dcache_mmap_unlock(mapping); in __flush_dcache_aliases()
289 struct address_space *mapping; in __sync_icache_dcache() local
[all …]
/linux/drivers/media/usb/uvc/
H A Duvc_ctrl.c410 static bool uvc_ctrl_mapping_is_compound(struct uvc_control_mapping *mapping) in uvc_ctrl_mapping_is_compound() argument
412 return mapping->v4l2_type >= V4L2_CTRL_COMPOUND_TYPES; in uvc_ctrl_mapping_is_compound()
415 static s32 uvc_mapping_get_s32(struct uvc_control_mapping *mapping, in uvc_mapping_get_s32() argument
420 mapping->get(mapping, query, data_in, sizeof(data_out), &data_out); in uvc_mapping_get_s32()
425 static void uvc_mapping_set_s32(struct uvc_control_mapping *mapping, in uvc_mapping_set_s32() argument
428 mapping->set(mapping, sizeof(data_in), &data_in, data_out); in uvc_mapping_set_s32()
434 * device. The custom menu_mapping in the control @mapping is used when
445 static int uvc_mapping_get_menu_value(const struct uvc_control_mapping *mapping, in uvc_mapping_get_menu_value() argument
448 if (!test_bit(idx, &mapping->menu_mask)) in uvc_mapping_get_menu_value()
451 if (mapping->menu_mapping) in uvc_mapping_get_menu_value()
[all …]
/linux/drivers/gpu/drm/tegra/
H A Duapi.c17 struct tegra_drm_mapping *mapping = in tegra_drm_mapping_release() local
20 host1x_bo_unpin(mapping->map); in tegra_drm_mapping_release()
21 host1x_bo_put(mapping->bo); in tegra_drm_mapping_release()
23 kfree(mapping); in tegra_drm_mapping_release()
26 void tegra_drm_mapping_put(struct tegra_drm_mapping *mapping) in tegra_drm_mapping_put() argument
28 kref_put(&mapping->ref, tegra_drm_mapping_release); in tegra_drm_mapping_put()
33 struct tegra_drm_mapping *mapping; in tegra_drm_channel_context_close() local
39 xa_for_each(&context->mappings, id, mapping) in tegra_drm_channel_context_close()
40 tegra_drm_mapping_put(mapping); in tegra_drm_channel_context_close()
192 struct tegra_drm_mapping *mapping; in tegra_drm_ioctl_channel_map() local
[all …]
/linux/drivers/gpu/drm/etnaviv/
H A Detnaviv_mmu.c6 #include <linux/dma-mapping.h>
55 /* unroll mapping in case something went wrong */ in etnaviv_context_map()
115 struct etnaviv_vram_mapping *mapping) in etnaviv_iommu_remove_mapping() argument
117 struct etnaviv_gem_object *etnaviv_obj = mapping->object; in etnaviv_iommu_remove_mapping()
121 etnaviv_iommu_unmap(context, mapping->vram_node.start, in etnaviv_iommu_remove_mapping()
123 drm_mm_remove_node(&mapping->vram_node); in etnaviv_iommu_remove_mapping()
126 void etnaviv_iommu_reap_mapping(struct etnaviv_vram_mapping *mapping) in etnaviv_iommu_reap_mapping() argument
128 struct etnaviv_iommu_context *context = mapping->context; in etnaviv_iommu_reap_mapping()
131 WARN_ON(mapping->use); in etnaviv_iommu_reap_mapping()
133 etnaviv_iommu_remove_mapping(context, mapping); in etnaviv_iommu_reap_mapping()
[all …]
H A Detnaviv_gem.c8 #include <linux/dma-mapping.h>
219 struct etnaviv_vram_mapping *mapping; in etnaviv_gem_get_vram_mapping() local
221 list_for_each_entry(mapping, &obj->vram_list, obj_node) { in etnaviv_gem_get_vram_mapping()
222 if (mapping->context == context) in etnaviv_gem_get_vram_mapping()
223 return mapping; in etnaviv_gem_get_vram_mapping()
229 void etnaviv_gem_mapping_unreference(struct etnaviv_vram_mapping *mapping) in etnaviv_gem_mapping_unreference() argument
231 struct etnaviv_gem_object *etnaviv_obj = mapping->object; in etnaviv_gem_mapping_unreference()
234 WARN_ON(mapping->use == 0); in etnaviv_gem_mapping_unreference()
235 mapping->use -= 1; in etnaviv_gem_mapping_unreference()
246 struct etnaviv_vram_mapping *mapping; in etnaviv_gem_mapping_get() local
[all …]
/linux/include/trace/events/
H A Dfilemap.h32 __entry->i_ino = folio->mapping->host->i_ino;
34 if (folio->mapping->host->i_sb)
35 __entry->s_dev = folio->mapping->host->i_sb->s_dev;
37 __entry->s_dev = folio->mapping->host->i_rdev;
62 struct address_space *mapping,
67 TP_ARGS(mapping, index, last_index),
77 __entry->i_ino = mapping->host->i_ino;
78 if (mapping->host->i_sb)
80 mapping->host->i_sb->s_dev;
82 __entry->s_dev = mapping
[all...]
/linux/Documentation/driver-api/
H A Dio-mapping.rst8 The io_mapping functions in linux/io-mapping.h provide an abstraction for
9 efficiently mapping small regions of an I/O device to the CPU. The initial
14 A mapping object is created during driver initialization using::
20 mappable, while 'size' indicates how large a mapping region to
23 This _wc variant provides a mapping which may only be used with
27 With this mapping object, individual pages can be mapped either temporarily
31 void *io_mapping_map_local_wc(struct io_mapping *mapping,
34 void *io_mapping_map_atomic_wc(struct io_mapping *mapping,
37 'offset' is the offset within the defined mapping region. Accessing
46 Temporary mappings are only valid in the context of the caller. The mapping
[all …]
/linux/drivers/gpu/drm/exynos/
H A Dexynos_drm_dma.c34 * drm_iommu_attach_device- attach device to iommu mapping
40 * mapping.
57 * Keep the original DMA mapping of the sub-device and in drm_iommu_attach_device()
66 ret = arm_iommu_attach_device(subdrv_dev, priv->mapping); in drm_iommu_attach_device()
68 ret = iommu_attach_device(priv->mapping, subdrv_dev); in drm_iommu_attach_device()
75 * drm_iommu_detach_device -detach device address space mapping from device
81 * mapping
92 iommu_detach_device(priv->mapping, subdrv_dev); in drm_iommu_detach_device()
102 DRM_INFO("Exynos DRM: using %s device for DMA mapping operations\n", in exynos_drm_register_dma()
109 if (!priv->mapping) { in exynos_drm_register_dma()
[all …]
/linux/Documentation/filesystems/iomap/
H A Ddesign.rst70 of mapping function calls into the filesystem across a larger amount of
78 1. Obtain a space mapping via ``->iomap_begin``
82 1. Revalidate the mapping and go back to (1) above, if necessary.
89 4. Release the mapping via ``->iomap_end``, if necessary
130 * **filesystem mapping lock**: This synchronization primitive is
131 internal to the filesystem and must protect the file mapping data
132 from updates while a mapping is being sampled.
138 mapping.
154 The filesystem communicates to the iomap iterator the mapping of
176 bytes, covered by this mapping.
[all …]
/linux/tools/testing/selftests/mm/
H A Dmremap_dontunmap.c59 "unable to unmap destination mapping"); in kernel_support_for_mremap_dontunmap()
63 "unable to unmap source mapping"); in kernel_support_for_mremap_dontunmap()
67 // This helper will just validate that an entire mapping contains the expected
94 // the source mapping mapped.
106 // Try to just move the whole mapping anywhere (not fixed). in mremap_dontunmap_simple()
122 "unable to unmap destination mapping"); in mremap_dontunmap_simple()
124 "unable to unmap source mapping"); in mremap_dontunmap_simple()
128 // This test validates that MREMAP_DONTUNMAP on a shared mapping works as expected.
148 // Try to just move the whole mapping anywhere (not fixed). in mremap_dontunmap_simple_shmem()
155 "unable to unmap source mapping"); in mremap_dontunmap_simple_shmem()
[all …]
/linux/tools/testing/selftests/vfio/
H A Dvfio_dma_mapping_test.c39 struct iommu_mapping *mapping) in intel_iommu_mapping_get() argument
67 memset(mapping, 0, sizeof(*mapping)); in intel_iommu_mapping_get()
68 parse_next_value(&rest, &mapping->pgd); in intel_iommu_mapping_get()
69 parse_next_value(&rest, &mapping->p4d); in intel_iommu_mapping_get()
70 parse_next_value(&rest, &mapping->pud); in intel_iommu_mapping_get()
71 parse_next_value(&rest, &mapping->pmd); in intel_iommu_mapping_get()
72 parse_next_value(&rest, &mapping->pte); in intel_iommu_mapping_get()
87 struct iommu_mapping *mapping) in iommu_mapping_get() argument
90 return intel_iommu_mapping_get(bdf, iova, mapping); in iommu_mapping_get()
139 struct iommu_mapping mapping; in TEST_F() local
[all …]
/linux/fs/
H A Ddax.c180 * @entry may no longer be the entry at the index in the mapping.
345 * A DAX folio is considered shared if it has no mapping set and ->share (which
352 return !folio->mapping && folio->share; in dax_folio_is_shared()
358 * previously been associated with any mappings the ->mapping and ->index
359 * fields will be set. If it has already been associated with a mapping
360 * the mapping will be cleared and the share count set. It's then up to
362 * recover ->mapping and ->index information. For example by implementing
369 * folio->mapping. in dax_folio_make_shared()
371 folio->mapping = NULL; in dax_folio_make_shared()
393 folio->mapping in dax_folio_put()
441 dax_associate_entry(void * entry,struct address_space * mapping,struct vm_area_struct * vma,unsigned long address,bool shared) dax_associate_entry() argument
468 dax_disassociate_entry(void * entry,struct address_space * mapping,bool trunc) dax_disassociate_entry() argument
508 struct address_space *mapping = READ_ONCE(folio->mapping); dax_lock_folio() local
549 struct address_space *mapping = folio->mapping; dax_unlock_folio() local
567 dax_lock_mapping_entry(struct address_space * mapping,pgoff_t index,struct page ** page) dax_lock_mapping_entry() argument
610 dax_unlock_mapping_entry(struct address_space * mapping,pgoff_t index,dax_entry_t cookie) dax_unlock_mapping_entry() argument
651 grab_mapping_entry(struct xa_state * xas,struct address_space * mapping,unsigned int order) grab_mapping_entry() argument
754 dax_layout_busy_page_range(struct address_space * mapping,loff_t start,loff_t end) dax_layout_busy_page_range() argument
809 dax_layout_busy_page(struct address_space * mapping) dax_layout_busy_page() argument
815 __dax_invalidate_entry(struct address_space * mapping,pgoff_t index,bool trunc) __dax_invalidate_entry() argument
840 __dax_clear_dirty_range(struct address_space * mapping,pgoff_t start,pgoff_t end) __dax_clear_dirty_range() argument
873 dax_delete_mapping_entry(struct address_space * mapping,pgoff_t index) dax_delete_mapping_entry() argument
888 dax_delete_mapping_range(struct address_space * mapping,loff_t start,loff_t end) dax_delete_mapping_range() argument
992 dax_invalidate_mapping_entry_sync(struct address_space * mapping,pgoff_t index) dax_invalidate_mapping_entry_sync() argument
1046 struct address_space *mapping = vmf->vma->vm_file->f_mapping; dax_insert_entry() local
1101 dax_writeback_one(struct xa_state * xas,struct dax_device * dax_dev,struct address_space * mapping,void * entry) dax_writeback_one() argument
1199 dax_writeback_mapping_range(struct address_space * mapping,struct dax_device * dax_dev,struct writeback_control * wbc) dax_writeback_mapping_range() argument
1377 struct address_space *mapping = vmf->vma->vm_file->f_mapping; dax_pmd_load_hole() local
1865 struct address_space *mapping = vmf->vma->vm_file->f_mapping; dax_iomap_pte_fault() local
1975 struct address_space *mapping = vmf->vma->vm_file->f_mapping; dax_iomap_pmd_fault() local
2096 struct address_space *mapping = vmf->vma->vm_file->f_mapping; dax_insert_pfn_mkwrite() local
[all...]
/linux/drivers/sh/clk/
H A Dcore.c340 struct clk_mapping *mapping = clk->mapping; in clk_establish_mapping() local
345 if (!mapping) { in clk_establish_mapping()
349 * dummy mapping for root clocks with no specified ranges in clk_establish_mapping()
352 clk->mapping = &dummy_mapping; in clk_establish_mapping()
357 * If we're on a child clock and it provides no mapping of its in clk_establish_mapping()
358 * own, inherit the mapping from its root clock. in clk_establish_mapping()
361 mapping = clkp->mapping; in clk_establish_mapping()
362 BUG_ON(!mapping); in clk_establish_mapping()
366 * Establish initial mapping. in clk_establish_mapping()
368 if (!mapping->base && mapping->phys) { in clk_establish_mapping()
[all …]
/linux/arch/arm64/kvm/
H A Dpkvm.c341 struct pkvm_mapping *mapping; in __pkvm_pgtable_stage2_unmap()
344 for_each_mapping_in_range_safe(pgt, start, end, mapping) { in __pkvm_pgtable_stage2_unmap()
348 handle, mapping->gfn); in pkvm_pgtable_stage2_destroy_range()
352 page = pfn_to_page(mapping->pfn);
353 WARN_ON_ONCE(mapping->nr_pages != 1); in pkvm_pgtable_stage2_destroy_pgd()
356 pkvm_mapping_remove(mapping, &pgt->pkvm_mappings); in pkvm_pgtable_stage2_destroy_pgd()
357 kfree(mapping); in pkvm_pgtable_stage2_destroy_pgd()
367 struct pkvm_mapping *mapping; in pkvm_pgtable_stage2_map()
370 for_each_mapping_in_range_safe(pgt, start, end, mapping) { in pkvm_pgtable_stage2_map()
371 ret = kvm_call_hyp_nvhe(__pkvm_host_unshare_guest, handle, mapping in pkvm_pgtable_stage2_map()
329 struct pkvm_mapping *mapping; __pkvm_pgtable_stage2_unmap() local
364 struct pkvm_mapping *mapping = NULL; pkvm_pgtable_stage2_map() local
416 struct pkvm_mapping *mapping; pkvm_pgtable_stage2_wrprotect() local
433 struct pkvm_mapping *mapping; pkvm_pgtable_stage2_flush() local
447 struct pkvm_mapping *mapping; pkvm_pgtable_stage2_test_clear_young() local
[all...]
/linux/drivers/gpu/drm/panfrost/
H A Dpanfrost_gem.c9 #include <linux/dma-mapping.h>
113 struct panfrost_gem_mapping *iter, *mapping = NULL; in panfrost_gem_mapping_get() local
119 mapping = iter; in panfrost_gem_mapping_get()
125 return mapping; in panfrost_gem_mapping_get()
129 panfrost_gem_teardown_mapping(struct panfrost_gem_mapping *mapping) in panfrost_gem_teardown_mapping() argument
131 if (mapping->active) in panfrost_gem_teardown_mapping()
132 panfrost_mmu_unmap(mapping); in panfrost_gem_teardown_mapping()
134 spin_lock(&mapping->mmu->mm_lock); in panfrost_gem_teardown_mapping()
135 if (drm_mm_node_allocated(&mapping->mmnode)) in panfrost_gem_teardown_mapping()
136 drm_mm_remove_node(&mapping in panfrost_gem_teardown_mapping()
142 struct panfrost_gem_mapping *mapping; panfrost_gem_mapping_release() local
152 panfrost_gem_mapping_put(struct panfrost_gem_mapping * mapping) panfrost_gem_mapping_put() argument
162 struct panfrost_gem_mapping *mapping; panfrost_gem_teardown_mappings_locked() local
176 struct panfrost_gem_mapping *mapping; panfrost_gem_open() local
227 struct panfrost_gem_mapping *mapping = NULL, *iter; panfrost_gem_close() local
[all...]
/linux/tools/testing/selftests/namespaces/
H A Dfile_handle_test.c491 /* Disable setgroups to allow gid mapping */ in TEST()
496 char mapping[64]; in TEST() local
497 snprintf(mapping, sizeof(mapping), "0 %d 1", getuid()); in TEST()
498 write(uid_map_fd, mapping, strlen(mapping)); in TEST()
501 snprintf(mapping, sizeof(mapping), "0 %d 1", getgid()); in TEST()
502 write(gid_map_fd, mapping, strlen(mapping)); in TEST()
620 /* Disable setgroups to allow gid mapping */ in TEST()
625 char mapping[64]; in TEST() local
626 snprintf(mapping, sizeof(mapping), "0 %d 1", getuid()); in TEST()
627 write(uid_map_fd, mapping, strlen(mapping)); in TEST()
[all …]
/linux/Documentation/mm/
H A Dhighmem.rst18 The part of (physical) memory not covered by a permanent mapping is what we
64 These mappings are thread-local and CPU-local, meaning that the mapping
66 CPU while the mapping is active. Although preemption is never disabled by
68 CPU-hotplug until the mapping is disposed.
71 in which the local mapping is acquired does not allow it for other reasons.
82 virtual address of the direct mapping. Only real highmem pages are
95 therefore try to design their code to avoid the use of kmap() by mapping
107 NOTE: Conversions to kmap_local_page() must take care to follow the mapping
116 This permits a very short duration mapping of a single page. Since the
117 mapping is restricted to the CPU that issued it, it performs well, but
[all …]
/linux/Documentation/arch/riscv/
H A Dboot.rst14 mapping is set up.
40 PMPs, in the direct mapping, so the firmware must correctly mark those regions
117 Virtual mapping installation
120 The installation of the virtual mapping is done in 2 steps in the RISC-V kernel:
122 1. ``setup_vm()`` installs a temporary kernel mapping in ``early_pg_dir`` which
124 at this point. When establishing this mapping, no allocation can be done
128 2. ``setup_vm_final()`` creates the final kernel mapping in ``swapper_pg_dir``
130 mapping. When establishing this mapping, the kernel can allocate memory but
131 cannot access it directly (since the direct mapping is not present yet), so
136 direct mapping addresses to physical addresses, they need to know the start of
[all …]

12345678910>>...148