函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\blk-merge.c Create Date:2022-07-27 18:41:41
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:blk_rq_merge_ok

函数原型:bool blk_rq_merge_ok(struct request *rq, struct bio *bio)

返回类型:bool

参数:

类型参数名称
struct request *rq
struct bio *bio
870  如果非rq_mergeable(rq)或非bio_mergeable(bio)则返回:false
873  如果req_op(rq)不等于bio_op(bio)则返回:false
877  如果Return the data direction, READ or WRITE.(bio)不等于rq_data_dir(rq)则返回:false
881  如果rq_disk不等于bi_disk则返回:false
885  如果(blk_integrity_merge_bio(q, rq, bio) == false)则返回:false
889  如果req_op(rq)恒等于REQ_OP_WRITE_SAME且非blk_write_same_mergeable(bio, bio)则返回:false
897  如果write_hint不等于bi_write_hint则返回:false
900  如果ioprio不等于bio_prio(bio)则返回:false
903  返回:true
调用者
名称描述
blk_attempt_plug_mergelk_attempt_plug_merge - try to merge with %current's plugged list*@q: request_queue new bio is being queued at*@bio: new bio being queued*@nr_segs: number of segments in @bio*@same_queue_rq: pointer to &struct request that gets filled in when* another
blk_mq_bio_list_mergeIterate list of requests and see if we can merge this bio with any* of them.