Home
last modified time | relevance | path

Searched refs:kmap_atomic (Results 1 – 25 of 93) sorted by relevance

1234

/linux/Documentation/translations/zh_CN/mm/
H A Dhighmem.rst83 嵌套kmap_local_page()和kmap_atomic()映射在一定程度上是允许的(最多到KMAP_TYPE_NR),
87 * kmap_atomic(). 这允许对单个页面进行非常短的时间映射。由于映射被限制在发布它的CPU上,
90 kmap_atomic()也可以被中断上下文使用,因为它不睡眠,调用者也可能在调用kunmap_atomic()
93 内核中对kmap_atomic()的每次调用都会创建一个不可抢占的段,并禁用缺页异常。这可能是
94 未预期延迟的来源之一。因此用户应该选择kmap_local_page()而不是kmap_atomic()。
111 在64位系统中,调用kmap_local_page()、kmap_atomic()和kmap()没有实际作用,因为64位
/linux/arch/arm/mm/
H A Dcopypage-v4wt.c48 kto = kmap_atomic(to); in v4wt_copy_user_highpage()
49 kfrom = kmap_atomic(from); in v4wt_copy_user_highpage()
62 void *ptr, *kaddr = kmap_atomic(page); in v4wt_clear_user_highpage()
H A Dcopypage-fa.c43 kto = kmap_atomic(to); in fa_copy_user_highpage()
44 kfrom = kmap_atomic(from); in fa_copy_user_highpage()
57 void *ptr, *kaddr = kmap_atomic(page); in fa_clear_user_highpage()
H A Dcopypage-v4wb.c52 kto = kmap_atomic(to); in v4wb_copy_user_highpage()
53 kfrom = kmap_atomic(from); in v4wb_copy_user_highpage()
67 void *ptr, *kaddr = kmap_atomic(page); in v4wb_clear_user_highpage()
H A Dcopypage-xsc3.c69 kto = kmap_atomic(to); in xsc3_mc_copy_user_highpage()
70 kfrom = kmap_atomic(from); in xsc3_mc_copy_user_highpage()
82 void *ptr, *kaddr = kmap_atomic(page); in xsc3_mc_clear_user_highpage()
H A Dcopypage-feroceon.c71 kto = kmap_atomic(to); in feroceon_copy_user_highpage()
72 kfrom = kmap_atomic(from); in feroceon_copy_user_highpage()
81 void *ptr, *kaddr = kmap_atomic(page); in feroceon_clear_user_highpage()
H A Dcopypage-v6.c35 kfrom = kmap_atomic(from); in v6_copy_user_highpage_nonaliasing()
36 kto = kmap_atomic(to); in v6_copy_user_highpage_nonaliasing()
48 void *kaddr = kmap_atomic(page); in v6_clear_user_highpage_nonaliasing()
H A Dcopypage-xscale.c88 void *kto = kmap_atomic(to); in xscale_mc_copy_user_highpage()
110 void *ptr, *kaddr = kmap_atomic(page); in xscale_mc_clear_user_highpage()
H A Dcopypage-v4mc.c68 void *kto = kmap_atomic(to); in v4_mc_copy_user_highpage()
89 void *ptr, *kaddr = kmap_atomic(page); in v4_mc_clear_user_highpage()
/linux/include/linux/
H A Dhighmem-internal.h108 static inline void *kmap_atomic(struct page *page) in kmap_atomic() function
205 static inline void *kmap_atomic(struct page *page) in kmap_atomic() function
217 return kmap_atomic(page); in kmap_atomic_prot()
222 return kmap_atomic(pfn_to_page(pfn)); in kmap_atomic_pfn()
/linux/drivers/block/
H A Dbrd.c138 dst = kmap_atomic(page); in copy_to_brd()
149 dst = kmap_atomic(page); in copy_to_brd()
169 src = kmap_atomic(page); in copy_from_brd()
181 src = kmap_atomic(page); in copy_from_brd()
211 mem = kmap_atomic(page); in brd_do_bvec()
/linux/mm/
H A Dzsmalloc.c
/linux/crypto/async_tx/
H A Dasync_memcpy.c78 dest_buf = kmap_atomic(dest) + dest_offset; in async_memcpy()
79 src_buf = kmap_atomic(src) + src_offset; in async_memcpy()
/linux/drivers/target/
H A Dtarget_core_sbc.c409 unsigned char *addr = kmap_atomic(sg_page(sg)); in compare_and_write_do_cmp()
1173 paddr = kmap_atomic(sg_page(psg)) + psg->offset; in sbc_dif_generate()
1174 daddr = kmap_atomic(sg_page(dsg)) + dsg->offset; in sbc_dif_generate()
1189 daddr = kmap_atomic(sg_page(dsg)) + dsg->offset; in sbc_dif_generate()
1202 daddr = kmap_atomic(sg_page(dsg)) + dsg->offset; in sbc_dif_generate()
1287 paddr = kmap_atomic(sg_page(psg)) + psg->offset; in sbc_dif_copy_prot()
1291 addr = kmap_atomic(sg_page(sg)) + sg->offset + offset; in sbc_dif_copy_prot()
1330 paddr = kmap_atomic(sg_page(psg)) + psg->offset; in sbc_dif_verify()
1331 daddr = kmap_atomic(sg_page(dsg)) + dsg->offset; in sbc_dif_verify()
1347 daddr = kmap_atomic(sg_page(dsg)) + dsg->offset; in sbc_dif_verify()
[all …]
/linux/Documentation/mm/
H A Dhighmem.rst61 These functions should always be used, whereas kmap_atomic() and kmap() have
99 Nesting kmap_local_page() and kmap_atomic() mappings is allowed to a certain
105 * kmap_atomic(). This function has been deprecated; use kmap_local_page().
109 calls to kmap_atomic() and kunmap_atomic() may implicitly depend on the side
121 kmap_atomic() may also be used by interrupt contexts, since it does not
125 Each call of kmap_atomic() in the kernel creates a non-preemptible section
127 users should prefer kmap_local_page() instead of kmap_atomic().
159 On 64-bit systems, calls to kmap_local_page(), kmap_atomic() and kmap() have
/linux/arch/um/kernel/skas/
H A Duaccess.c81 addr = (unsigned long) kmap_atomic(page) + in do_op_one_page()
272 addr = (unsigned long) kmap_atomic(page) + in arch_futex_atomic_op_inuser()
350 uaddr = kmap_atomic(page) + ((unsigned long) uaddr & ~PAGE_MASK); in futex_atomic_cmpxchg_inatomic()
/linux/drivers/crypto/
H A Domap-crypto.c181 srcb = kmap_atomic(sg_page(src)) + srco + src->offset; in omap_crypto_copy_data()
182 dstb = kmap_atomic(sg_page(dst)) + dsto + dst->offset; in omap_crypto_copy_data()
/linux/drivers/gpu/drm/
H A Ddrm_cache.c60 page_virtual = kmap_atomic(page); in drm_clflush_page()
109 page_virtual = kmap_atomic(page); in drm_clflush_pages()
/linux/fs/ocfs2/
H A Dsymlink.c75 kaddr = kmap_atomic(page); in ocfs2_fast_symlink_read_folio()
/linux/arch/xtensa/kernel/
H A Dpci-dma.c36 void *vaddr = kmap_atomic(page); in do_cache_op()
/linux/arch/csky/mm/
H A Ddma-mapping.c29 start = kmap_atomic(page); in cache_op()
/linux/drivers/target/tcm_fc/
H A Dtfc_io.c141 from = kmap_atomic(page + (mem_off >> PAGE_SHIFT)); in ft_queue_data_in()
300 to = kmap_atomic(page + (mem_off >> PAGE_SHIFT)); in ft_recv_write_data()
/linux/arch/mips/mm/
H A Ddma-noncoherent.c111 addr = kmap_atomic(page); in dma_sync_phys()
/linux/arch/powerpc/mm/
H A Ddma-noncoherent.c71 start = (unsigned long)kmap_atomic(page + seg_nr) + seg_offset; in __dma_sync_page_highmem()
/linux/arch/riscv/kernel/probes/
H A Duprobes.c168 void *kaddr = kmap_atomic(page); in arch_uprobe_copy_ixol()

1234