函数逻辑报告 |
Source Code:block\blk-core.c |
Create Date:2022-07-27 18:35:26 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:submit_bio - submit a bio to the block device layer for I/O*@bio: The &struct bio which describes the I/O* submit_bio() is very similar in purpose to generic_make_request(), and* uses that function to do most of the work. Both are fairly rough
函数原型:blk_qc_t submit_bio(struct bio *bio)
返回类型:blk_qc_t
参数:
类型 | 参数 | 名称 |
---|---|---|
struct bio * | bio |
1148 | bool workingset_read = false |
1152 | 如果blkcg_punt_bio_submit(bio)则返回:BLK_QC_T_NONE |
1162 | 如果此条件成立可能性小(为编译器优化)(bio_op(bio) == REQ_OP_WRITE_SAME)则count等于queue_logical_block_size(queue)右移9位 |
1164 | 否则count等于bio_sectors(bio) |
1167 | 如果op_is_write(bio_op(bio))则 |
1168 | count_vm_events(PGPGOUT, count) |
1169 | 否则 |
1170 | 如果bio_flagged(bio, BIO_WORKINGSET)则workingset_read = true |
1173 | count_vm_events(PGPGIN, count) |
1192 | 如果workingset_read则psi_memstall_enter( & pflags) |
1197 | 如果workingset_read则psi_memstall_leave( & pflags) |
1200 | 返回:ret |
名称 | 描述 |
---|---|
swap_readpage | |
blk_next_bio | |
blkg_async_bio_workfn | |
__blkdev_direct_IO_simple | |
__blkdev_direct_IO | |
dio_bio_submit | In the AIO read case we speculatively dirty the pages before starting IO.* During IO completion, any of these pages which happen to have been written* back will be redirtied by bio_check_pages_dirty(). |
mpage_bio_submit | |
iomap_readpage_actor | |
iomap_readpage | |
iomap_readpages | |
iomap_submit_ioend | Submit the final bio for an ioend.* If @error is non-zero, it means that we have a situation where some part of* the submission process has failed after we have marked paged for writeback* and unlocked them |
iomap_chain_bio | Allocate a new bio, and chain the old bio to the new one.* Note that we have to do perform the chaining in this unintuitive order* so that the bi_private linkage is set up in the right direction for the* traversal in iomap_finish_ioend(). |
iomap_dio_submit_bio | |
hib_submit_io |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |