bfq_bfqq_move(9)
β¨ bfq_bfqq_move β the glow-up relocation service π
okay so bestie, this is bfq_bfqq_move(9) from the Kernel API Manual, and it's literally the function that gives a queue a whole new address. moving day, but make it kernel. πβ¨
πΈ SYNOPSIS πΈ
void bfq_bfqq_move (struct bfq_data *bfqd , struct bfq_queue *bfqq ,
struct bfq_group *bfqg );
three args, void return, no drama. she takes bfqd, bfqq and bfqg and she does the thing. periodt.
π ARGUMENTS π
bfqdβ the queue descriptor. the big-picture context vibe. πbfqqβ the queue we're moving. our main character, fr fr. π¦bfqgβ the group she's moving to. the new crib. π
π DESCRIPTION π
so the whole plot: move bfqq to bfqg, deactivating it from its old group and reactivating it on the new one. it's giving "pack ur bags, we're switching friend groups" and honestly? iconic. β¨
one very specific detail that matters: avoid putting the entity on the old group idle tree. like, do not leave her stuff behind in the old group's idle tree. we're not doing that. nope. π
β οΈ Must be called under the scheduler lock. why? to make sure that the blkg owningbfqgdoes not disappear mid-move. if that blkg bails while you're relocating, it's over for you. π (see the comments inbfq_bic_update_cgroupon guaranteeing the consistency of blkg objects β that's where the lore lives. iykyk.)
π₯ SEE ALSO π₯
kernel file ./block/bfq-cgroup.c, plus the whole squad:
bfq_stat_add(9)bfq_stat_read(9)bfq_stat_reset(9)bfq_stat_add_aux(9)blkg_prfill_stat(9)__bfq_bic_change_cgroup(9)bfq_flush_idle_tree(9)bfq_reparent_leaf_entity(9)bfq_reparent_active_queues(9)bfq_pd_offline(9)
okay that's the whole thing, no cap. this page ships out of ./block and the date on it says October 2026, so bestie is out here being organized about future-dated kernel docs. love that for her. π«Άπ stay locked, stay moved, and please please please call it under the scheduler lock π
β¨π
π¦ 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