函数逻辑报告 |
Source Code:block\blk-merge.c |
Create Date:2022-07-27 18:41:20 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:map a request to scatterlist, return number of sg entries setup. Caller* must make sure sg can hold rq->nr_phys_segments entries
函数原型:int blk_rq_map_sg(struct request_queue *q, struct request *rq, struct scatterlist *sglist)
返回类型:int
参数:
类型 | 参数 | 名称 |
---|---|---|
struct request_queue * | q | |
struct request * | rq | |
struct scatterlist * | sglist |
525 | struct scatterlist * sg = NULL |
526 | nsegs等于0 |
528 | 如果rq_flags按位与Look at ->special_vec for the actual data payload instead of thebio chain. 则nsegs等于__blk_bvec_map_sg(special_vec, sglist, & sg) |
530 | 否则如果bio且bio_op(bio)恒等于REQ_OP_WRITE_SAME则nsegs等于__blk_bvec_map_sg(bio_iovec(bio), sglist, & sg) |
537 | pad_len等于dma_pad_mask按位与blk_rq_bytes(rq)的反的值加1 |
544 | 如果dma_drain_size且dma_drain_needed(rq)则 |
545 | 如果op_is_write(req_op(rq))则memset(dma_drain_buffer, 0, dma_drain_size) |
548 | 取消设置的散列表结束标记 |
549 | sg等于 返回下一个散列表的条目 |
554 | nsegs自加 |
567 | 返回:nsegs |
名称 | 描述 |
---|---|
bsg_map_buffer |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |