vdo_schedul...with_context(9)
π vdo_schedule_operation_with_context(9) β from the Kernel API Manual, bestie
okay so picture this: you're in the kernel, you've got zones, and you need an operation to hit all of them. That's this function. It's giving main character energy in the action-manager department. Let's get into it π«Ά
β¨ NAME β¨
vdo_schedule_operation_with_context β schedules an operation on all the zones. every single one. no zone left behind π
πΈ SYNOPSIS πΈ
bool vdo_schedule_operation_with_context (struct action_manager *manager
, const struct admin_state_code *operation , vdo_action_preamble_fn
preamble , vdo_zone_action_fn action , vdo_action_conclusion_fn
conclusion , void *context , struct vdo_completion *parent );
π ARGUMENTS π
managerβ the action manager you're scheduling the action on. your venue, your vibe.operationβ the operation this action is gonna perform.preambleβ a method that gets invoked on the initiator thread once the action is started but before it applies to each zone. can beNULL.actionβ the action to apply to each zone. can beNULL.conclusionβ a method invoked back on the initiator thread once the action has been applied to all the zones. can beNULL.contextβ an action-specific context, and you can grab it back later viavdo_get_current_action_context. can beNULL.parentβ the object to notify once the action is complete, or if the action can not be scheduled. can beNULL.
π¦ DESCRIPTION π¦
So here's the tea β β the operation's action launches immediately if there's no current action chilling there. If there is one, it waits and launches as soon as that current action completes. patient queen behavior.
But π¨ β if there's already a pending action, this operation will not be scheduled, and if it has a parent, that parent gets notified instead. iykyk.
β οΈ and bestie, listen: at least one ofpreamble,action, orconclusionmust not beNULL. like, at least one. don't come in here with all three null, that's not the vibe. π
π₯ RETURN π₯
true if the action was scheduled. slay π
π SEE ALSO π
- the kernel file
./drivers/md/dm-vdo/action-manager.c struct action(9)struct action_manager(9)vdo_make_action_manager(9)vdo_schedule_default_action(9)vdo_schedule_action(9)vdo_schedule_operation(9)
okay that's the whole page, go forth and schedule responsibly π§ββοΈπ
this lil beauty lives in ./drivers/md/dm-vdo and it was 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