函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:q_forget_entity - do not consider entity any longer for scheduling*@st: the service tree.*@entity: the entity being removed.*@is_in_service: true if entity is currently the in-service entity.* Forget everything about @entity

函数原型:static void bfq_forget_entity(struct bfq_service_tree *st, struct bfq_entity *entity, bool is_in_service)

返回类型:void

参数:

类型参数名称
struct bfq_service_tree *st
struct bfq_entity *entity
boolis_in_service
651  bfqq等于bfq_entity_to_bfqq(entity)
653  * Flag, true if the entity is on a tree (either the active or * the idle one of its service_tree) or is in service. = false
654  scheduler weight sum; active and idle entities contribute to it 减等于 weight of the queue
655  如果is_in_service则返回
658  如果bfqqTask 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.
660  否则bfqg_and_blkg_put(container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(entity, structbfq_group, entity))
调用者
名称描述
bfq_put_idle_entityq_put_idle_entity - release the idle tree ref of an entity.*@st: service tree for the entity.*@entity: the entity being released.
__bfq_deactivate_entity__bfq_deactivate_entity - update sched_data and service trees for* entity, so as to represent entity as inactive*@entity: the entity being deactivated.*@ins_into_idle_tree: if false, the entity will not be put into the* idle tree.