函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:bfq_request_merged

函数原型:static void bfq_request_merged(struct request_queue *q, struct request *req, enum elv_merge type)

返回类型:void

参数:

类型参数名称
struct request_queue *q
struct request *req
enum elv_mergetype
2266  如果type恒等于ELEVATOR_FRONT_MERGErb_prev( & sort/lookup )且lk_rq_pos() : the current sector* blk_rq_bytes() : bytes left in the entire request* blk_rq_cur_bytes() : bytes left in the current segment* blk_rq_err_bytes() : bytes left till the next error boundary* blk_rq_sectors() : sectors left in the entire 小于lk_rq_pos() : the current sector* blk_rq_bytes() : bytes left in the entire request* blk_rq_cur_bytes() : bytes left in the current segment* blk_rq_err_bytes() : bytes left till the next error boundary* blk_rq_sectors() : sectors left in the entire
2271  bfqq等于bfq_init_rq(req)
2275  如果非bfqq则返回
2278  bfqd等于parent bfq_data
2281  elv_rb_del( & sorted list of pending requests , req)
2282  RB-tree support functions for inserting/lookup/removal of requests* in a sorted RB tree.
2285  prev等于 fifo isn't expired, next request to serve
2286  next_rq等于Lifted from AS - choose which of rq1 and rq2 that is best served now.* We choose the request that is closer to the head right now. Distance* behind the head is penalized and only allowed to a certain extent.
2288  fifo isn't expired, next request to serve 等于next_rq