函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:Decrement the weight counter associated with the queue, and, if the* counter reaches 0, remove the counter from the tree.* See the comments to the function bfq_weights_tree_add() for considerations* about overhead.

函数原型:void __bfq_weights_tree_remove(struct bfq_data *bfqd, struct bfq_queue *bfqq, struct rb_root_cached *root)

返回类型:void

参数:

类型参数名称
struct bfq_data *bfqd
struct bfq_queue *bfqq
struct rb_root_cached *root
800  如果非pointer to the weight counter associated with this entity 则返回
803  r of active queues with this weight 自减
804  如果r of active queues with this weight 大于0则转到:reset_entity_pointer
807  rb_erase_cached( & Weights tree member (see bfq_data's @queue_weights_tree), root)
808  释放内存
810  reset_entity_pointer :
811  pointer to the weight counter associated with this entity = NULL
812  Task holds one reference to the queue, dropped when task exits. Each rq* in-flight on this queue also holds a reference, dropped when rq is freed.* Scheduler lock must be held here. Recall not to use bfqq after calling* this function on it.
调用者
名称描述
bfq_weights_tree_removeInvoke __bfq_weights_tree_remove on bfqq and decrement the number* of active groups for each queue's inactive parent entity.
__bfq_entity_update_weight_prioUpdate weight and priority of entity