/linux/Documentation/translations/zh_CN/mm/ |
H A D | highmem.rst | 55 * kmap_local_page()。这个函数是用来要求短期映射的。它可以从任何上下文(包括中断)中调用, 70 kmap_local_page()总是返回一个有效的虚拟地址,并且假定kunmap_local()不会失败。 74 page_address()。然而,使用kmap_local_page() / kunmap_local()总是安全的。 81 kmap(),将页面映射到将被使用的同一线程中,并优先使用kmap_local_page()。 83 嵌套kmap_local_page()和kmap_atomic()映射在一定程度上是允许的(最多到KMAP_TYPE_NR), 85 请参见kmap_local_page() kdocs(包含在 "函数 "部分)。 94 未预期延迟的来源之一。因此用户应该选择kmap_local_page()而不是kmap_atomic()。 111 在64位系统中,调用kmap_local_page()、kmap_atomic()和kmap()没有实际作用,因为64位
|
/linux/include/linux/ |
H A D | highmem.h | 96 static inline void *kmap_local_page(struct page *page); 204 void *addr = kmap_local_page(page); in clear_user_highpage() 239 void *kaddr = kmap_local_page(page); in clear_highpage() 246 void *kaddr = kmap_local_page(page); in clear_highpage_kasan_tagged() 272 void *kaddr = kmap_local_page(page); in zero_user_segments() 308 vfrom = kmap_local_page(from); in copy_user_highpage() 309 vto = kmap_local_page(to); in copy_user_highpage() 324 vfrom = kmap_local_page(from); in copy_highpage() 325 vto = kmap_local_page(to); in copy_highpage() 347 vfrom = kmap_local_page(from); in copy_mc_user_highpage() [all …]
|
H A D | highmem-internal.h | 71 static inline void *kmap_local_page(struct page *page) in kmap_local_page() function 178 static inline void *kmap_local_page(struct page *page) in kmap_local_page() function 190 return kmap_local_page(page); in kmap_local_page_prot() 195 return kmap_local_page(pfn_to_page(pfn)); in kmap_local_pfn()
|
/linux/fs/hfsplus/ |
H A D | bnode.c | 151 dst_ptr = kmap_local_page(*dst_page) + dst; in hfs_bnode_copy() 152 src_ptr = kmap_local_page(*src_page) + src; in hfs_bnode_copy() 196 dst_ptr = kmap_local_page(*dst_page); in hfs_bnode_move() 197 src_ptr = kmap_local_page(*src_page); in hfs_bnode_move() 208 dst_ptr = kmap_local_page(*dst_page); in hfs_bnode_move() 209 src_ptr = kmap_local_page(*src_page); in hfs_bnode_move() 216 dst_ptr = kmap_local_page(*dst_page) + dst; in hfs_bnode_move() 217 src_ptr = kmap_local_page(*src_page) + src; in hfs_bnode_move() 247 dst_ptr = kmap_local_page(*dst_page) + src; in hfs_bnode_move() 248 src_ptr = kmap_local_page(*src_page) + src; in hfs_bnode_move() [all …]
|
H A D | bitmap.c | 42 pptr = kmap_local_page(page); in hfsplus_block_allocate() 87 curr = pptr = kmap_local_page(page); in hfsplus_block_allocate() 138 pptr = kmap_local_page(page); in hfsplus_block_allocate() 188 pptr = kmap_local_page(page); in hfsplus_block_free() 222 pptr = kmap_local_page(page); in hfsplus_block_free()
|
H A D | btree.c | 166 head = (struct hfs_btree_header_rec *)(kmap_local_page(page) + in hfs_btree_open() 295 head = (struct hfs_btree_header_rec *)(kmap_local_page(page) + in hfs_btree_write() 398 data = kmap_local_page(*pagep); in hfs_bmap_alloc() 422 data = kmap_local_page(*++pagep); in hfs_bmap_alloc() 444 data = kmap_local_page(*pagep); in hfs_bmap_alloc() 494 data = kmap_local_page(page); in hfs_bmap_free()
|
/linux/Documentation/mm/ |
H A D | highmem.rst | 54 * kmap_local_page(), kmap_local_folio() - These functions are used to create 78 kmap_local_page(), as well as kmap_local_folio() always returns valid virtual 97 kmap_local_page() or kmap_local_folio(). 99 Nesting kmap_local_page() and kmap_atomic() mappings is allowed to a certain 101 because the map implementation is stack based. See kmap_local_page() kdocs 105 * kmap_atomic(). This function has been deprecated; use kmap_local_page(). 107 NOTE: Conversions to kmap_local_page() must take care to follow the mapping 108 restrictions imposed on kmap_local_page(). Furthermore, the code between 112 both must be made in conjunction with the use of kmap_local_page(). 127 users should prefer kmap_local_page() instead of kmap_atomic(). [all …]
|
/linux/fs/erofs/ |
H A D | decompressor.c | 169 inpage = kmap_local_page(*in); in z_erofs_lz4_handle_overlap() 210 headpage = kmap_local_page(*rq->in); in z_erofs_lz4_decompress_mem() 280 dst = kmap_local_page(*rq->out); in z_erofs_lz4_decompress() 326 kin = kmap_local_page(rq->in[nrpages_in - 1]); in z_erofs_transform_plain() 344 kin = kmap_local_page(rq->in[ni]); in z_erofs_transform_plain() 395 dctx->kout = kmap_local_page(*pgo); in z_erofs_stream_switch_bufs() 414 dctx->kin = kmap_local_page(rq->in[dctx->ni]); in z_erofs_stream_switch_bufs() 419 dctx->kout = kmap_local_page(rq->out[dctx->no]); in z_erofs_stream_switch_bufs()
|
/linux/fs/hfs/ |
H A D | btree.c | 83 head = (struct hfs_btree_header_rec *)(kmap_local_page(page) + in hfs_btree_open() 174 head = (struct hfs_btree_header_rec *)(kmap_local_page(page) + in hfs_btree_write() 274 data = kmap_local_page(*pagep); in hfs_bmap_alloc() 297 data = kmap_local_page(*++pagep); in hfs_bmap_alloc() 319 data = kmap_local_page(*pagep); in hfs_bmap_alloc() 366 data = kmap_local_page(page); in hfs_bmap_free()
|
/linux/mm/ |
H A D | page_poison.c | 24 void *addr = kmap_local_page(page); in poison_page() 80 addr = kmap_local_page(page); in unpoison_page()
|
H A D | mempool.c | 71 void *addr = kmap_local_page((struct page *)element); in check_element() 100 void *addr = kmap_local_page((struct page *)element); in poison_element()
|
/linux/kernel/module/ |
H A D | decompress.c | 122 s.next_out = kmap_local_page(page); in module_gzip_decompress() 181 xz_buf.out = kmap_local_page(page); in module_xz_decompress() 265 zstd_dec.dst = kmap_local_page(page); in module_zstd_decompress()
|
/linux/rust/helpers/ |
H A D | page.c | 13 return kmap_local_page(page); in rust_helper_kmap_local_page()
|
/linux/drivers/infiniband/sw/rxe/ |
H A D | rxe_mr.c | 261 va = kmap_local_page(page); in rxe_mr_copy_xarray() 289 va = kmap_local_page(page); in rxe_mr_copy_dma() 456 va = kmap_local_page(page); in rxe_flush_pmem_iova() 508 va = kmap_local_page(page); in rxe_mr_do_atomic_op() 567 va = kmap_local_page(page); in rxe_mr_do_atomic_write()
|
/linux/arch/loongarch/mm/ |
H A D | init.c | 47 vfrom = kmap_local_page(from); in copy_user_highpage() 48 vto = kmap_local_page(to); in copy_user_highpage()
|
/linux/drivers/staging/media/atomisp/pci/hmm/ |
H A D | hmm.c | 280 src = (char *)kmap_local_page(bo->pages[idx]) + offset; in load_and_flush_by_kmap() 412 des = (char *)kmap_local_page(bo->pages[idx]); in hmm_store() 483 des = (char *)kmap_local_page(bo->pages[idx]) + offset; in hmm_set()
|
/linux/include/crypto/ |
H A D | scatterwalk.h | 68 return kmap_local_page(scatterwalk_page(walk)) + in scatterwalk_map()
|
/linux/arch/powerpc/mm/ |
H A D | cacheflush.c | 218 maddr = kmap_local_page(page) + (addr & ~PAGE_MASK); in flush_icache_user_page()
|
/linux/fs/squashfs/ |
H A D | file_direct.c | 91 pageaddr = kmap_local_page(last_page); in squashfs_readpage_block()
|
H A D | page_actor.c | 86 return actor->pageaddr = kmap_local_page(actor->page[actor->next_page++]); in handle_next_page()
|
/linux/drivers/vfio/pci/pds/ |
H A D | lm.c | 216 from_buff = kmap_local_page(page); in pds_vfio_save_read() 314 to_buff = kmap_local_page(page); in pds_vfio_restore_write()
|
/linux/arch/loongarch/kernel/ |
H A D | uprobes.c | 147 void *kaddr = kmap_local_page(page); in arch_uprobe_copy_ixol()
|
/linux/drivers/gpu/drm/i915/gem/selftests/ |
H A D | i915_gem_coherency.c | 36 cpu = kmap_local_page(page) + offset_in_page(offset); in cpu_set() 67 cpu = kmap_local_page(page) + offset_in_page(offset); in cpu_get()
|
/linux/drivers/vfio/pci/mlx5/ |
H A D | main.c | 177 from_buff = kmap_local_page(page); in mlx5vf_buf_read() 388 to_buff = kmap_local_page(page); in mlx5vf_add_stop_copy_header() 721 to_buff = kmap_local_page(page); in mlx5vf_append_page_to_mig_buf() 795 to_buff = kmap_local_page(page); in mlx5vf_resume_read_header_data() 831 to_buff = kmap_local_page(page); in mlx5vf_resume_read_header()
|
/linux/arch/mips/mm/ |
H A D | cache.c | 120 addr = (unsigned long)kmap_local_page(nth_page(page, i)); in __flush_dcache_pages()
|