__bfq_requeue_entity(9)
π
__bfq_requeue_entity β a Kernel API Manual moment
okay bestie so this is a page from the Kernel API Manual, and the function we're obsessing over today is literally called __bfq_requeue_entity. yes the double underscore. yes it's serious. no you may not skip it. π
β¨ NAME β¨
__bfq_requeue_entity β handle requeueing or repositioning of an entity. that's the whole vibe. requeue or reposition. she contains multitudes. π
πΈ SYNOPSIS πΈ
void __bfq_requeue_entity (struct bfq_entity *entity );
returns nothing, takes exactly one thing. low maintenance icon behavior fr fr.
π¦ ARGUMENTS π¦
entityβ the entity being requeued or repositioned. that's her. that's the girl. she's astruct bfq_entity *and she's about to get moved around. π«Ά
π DESCRIPTION π
okay so here's the tea, no cap. π
Requeueing is needed if this entity stops being served β which happens if a leaf descendant entity has expired. so like, a baby entity down at the bottom of the tree timed out, and now mom needs to go back in the queue. π
Repositioning, on the other hand, is needed if the next_inservice_entity for the child entity has changed. different reason, same "we gotta move her" energy.
the original literally says: "See the comments inside the function for details." so like. go read the code bestie. the details are in there, i'm just the messenger. π
Basically β and this is the whole dance, three steps, slay β this function does this:
- removes
entityfrom its active tree if it's present there, - updates the timestamps of
entity, and - inserts
entityback into its active tree β in the new, right position for the new values of the timestamps. β¨
it's giving "take her out, refresh her, put her back exactly where she belongs." main character energy tbh. the tree stays sorted, she stays iconic. π₯
π SEE ALSO π
the group chat is huge and everybody's invited. also fyi the kernel file is ./block/bfq-wf2q.c:
bfq_gt(9)bfq_update_next_in_service(9)bfq_delta(9)bfq_calc_finish(9)bfq_entity_of(9)bfq_extract(9)bfq_idle_extract(9)bfq_insert(9)bfq_update_min(9)bfq_update_active_node(9)bfq_update_active_tree(9)bfq_active_insert(9)bfq_ioprio_to_weight(9)bfq_weight_to_ioprio(9)bfq_find_deepest(9)bfq_active_extract(9)bfq_idle_insert(9)bfq_forget_entity(9)bfq_put_idle_entity(9)bfq_forget_idle(9)bfq_bfqq_served(9)bfq_bfqq_charge_time(9)__bfq_activate_entity(9)bfq_activate_requeue_entity(9)__bfq_deactivate_entity(9)bfq_deactivate_entity(9)bfq_calc_vtime_jump(9)bfq_first_active_entity(9)__bfq_lookup_next_entity(9)bfq_lookup_next_entity(9)
and that's the page bestie!! π§π this cutie came out of the ./block source and it's dated October 2026 β mwah, periodt. πβ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms