函数逻辑报告 |
Source Code:block\blk-merge.c |
Create Date:2022-07-27 18:40:48 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:blk_bio_discard_split
函数原型:static struct bio *blk_bio_discard_split(struct request_queue *q, struct bio *bio, struct bio_set *bs, unsigned *nsegs)
返回类型:struct bio
参数:
类型 | 参数 | 名称 |
---|---|---|
struct request_queue * | q | |
struct bio * | bio | |
struct bio_set * | bs | |
unsigned * | nsegs |
71 | nsegs等于1 |
74 | granularity等于两数取大(discard_granularity >> 9, 1U) |
80 | 如果此条件成立可能性小(为编译器优化)(!max_discard_sectors)则 |
82 | 返回:NULL |
85 | 如果bio_sectors(bio)小于等于max_discard_sectors则返回:NULL |
94 | alignment等于discard_alignment右移9位的值取模granularity |
97 | tmp等于sector_div(tmp, granularity) |
99 | 如果split_sectors大于tmp则split_sectors减等于tmp |
名称 | 描述 |
---|---|
__blk_queue_split | __blk_queue_split - split a bio and submit the second half*@q: [in] request queue pointer*@bio: [in, out] bio to be split*@nr_segs: [out] number of segments in the first bio* Split a bio into two bios, chain the two bios, submit the second half and |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |