Function report |
Source Code:block\blk-mq-sched.c |
Create Date:2022-07-28 17:15:03 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:blk_mq_sched_try_merge
Proto:bool blk_mq_sched_try_merge(struct request_queue *q, struct bio *bio, unsigned int nr_segs, struct request **merged_request)
Type:bool
Parameter:
Type | Parameter | Name |
---|---|---|
struct request_queue * | q | |
struct bio * | bio | |
unsigned int | nr_segs | |
struct request ** | merged_request |
232 | Case elv_merge(q, & rq, bio) == ELEVATOR_BACK_MERGE |
233 | If Not blk_mq_sched_allow_merge(q, rq, bio) Then Return false |
235 | If Not bio_attempt_back_merge(rq, bio, nr_segs) Then Return false |
237 | merged_request = attempt_back_merge(q, rq) |
238 | If Not merged_request Then elv_merged_request(q, rq, ELEVATOR_BACK_MERGE) |
240 | Return true |
241 | Case elv_merge(q, & rq, bio) == ELEVATOR_FRONT_MERGE |
242 | If Not blk_mq_sched_allow_merge(q, rq, bio) Then Return false |
244 | If Not bio_attempt_front_merge(rq, bio, nr_segs) Then Return false |
246 | merged_request = attempt_front_merge(q, rq) |
247 | If Not merged_request Then elv_merged_request(q, rq, ELEVATOR_FRONT_MERGE) |
249 | Return true |
250 | Case elv_merge(q, & rq, bio) == ELEVATOR_DISCARD_MERGE |
251 | Return bio_attempt_discard_merge(q, rq, bio) |
252 | Default |
253 | Return false |
Name | Describe |
---|---|
dd_bio_merge | |
bfq_bio_merge |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |