Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:block\blk-merge.c Create Date:2022-07-28 17:06:22
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:blk_rq_merge_ok

Proto:bool blk_rq_merge_ok(struct request *rq, struct bio *bio)

Type:bool

Parameter:

TypeParameterName
struct request *rq
struct bio *bio
870  If Not rq_mergeable(rq) || Not bio_mergeable(bio) Then Return false
873  If req_op(rq) != bio_op(bio) Then Return false
877  If Return the data direction, READ or WRITE.(bio) != rq_data_dir(rq) Then Return false
881  If rq_disk != bi_disk Then Return false
885  If (blk_integrity_merge_bio(q, rq, bio) == false) Then Return false
889  If req_op(rq) == REQ_OP_WRITE_SAME && Not blk_write_same_mergeable(bio, bio) Then Return false
897  If write_hint != bi_write_hint Then Return false
900  If ioprio != bio_prio(bio) Then Return false
903  Return true
Caller
NameDescribe
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.