函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\bio.c Create Date:2022-07-27 18:30:48
Last Modify:2020-03-17 23:13:58 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:bio_copy_data_iter

函数原型:void bio_copy_data_iter(struct bio *dst, struct bvec_iter *dst_iter, struct bio *src, struct bvec_iter *src_iter)

返回类型:void

参数:

类型参数名称
struct bio *dst
struct bvec_iter *dst_iter
struct bio *src
struct bvec_iter *src_iter
1060  residual I/O count residual I/O count 循环
1061  src_bv等于bio_iter_iovec(src, * src_iter)
1062  dst_bv等于bio_iter_iovec(dst, * dst_iter)
1064  bytes等于两数取小(bv_len, bv_len)
1066  src_p等于kmap_atomic(bv_page)
1067  dst_p等于kmap_atomic(bv_page)
1069  memcpy(dst_p + bv_offset, src_p + bv_offset, bytes)
1073  Prevent people trying to call kunmap_atomic() as if it were kunmap()* kunmap_atomic() should get the return value of kmap_atomic, not the page.(dst_p)
1074  Prevent people trying to call kunmap_atomic() as if it were kunmap()* kunmap_atomic() should get the return value of kmap_atomic, not the page.(src_p)
1076  flush_dcache_page(bv_page)
1078  bio_advance_iter(src, src_iter, bytes)
1079  bio_advance_iter(dst, dst_iter, bytes)
调用者
名称描述
bio_copy_data_copy_data - copy contents of data buffers from one bio to another*@src: source bio*@dst: destination bio* Stops when it reaches the end of either @src or @dst - that is, copies* min(src->bi_size, dst->bi_size) bytes (or the equivalent for lists of bios).
bio_list_copy_data_list_copy_data - copy contents of data buffers from one chain of bios to* another*@src: source bio list*@dst: destination bio list* Stops when it reaches the end of either the @src list or @dst list - that is,* copies min(src->bi_size, dst->bi_size)