__pm_runtime_barrier(9)
π
__pm_runtime_barrier β the Kernel API Manual, but make it cute β¨
okay so bestie, we're in __pm_runtime_barrier(9) territory today and honestly? it's giving "bouncer at the club, but for power management requests" π«Ά
πΈ NAME πΈ
__pm_runtime_barrier β Cancel pending requests and wait for completions. periodt. π
β¨ SYNOPSIS β¨
void __pm_runtime_barrier (struct device *dev );
π ARGUMENTS π
devβ the device to handle. that's it, that's the whole argument. main character energy fr fr π
π DESCRIPTION π
okay so here's the vibe: this function flushes all pending requests for the device from pm_wq, and then it waits for all runtime PM operations involving the device that are currently in progress to complete. like, it literally stands there with its arms crossed until everyone's done. no cap. π
β οΈ bestie listen to me β Should be called under dev->power.lock with interrupts disabled. this is not a suggestion, it's the rule. respect the lock. π
π¦ SEE ALSO π¦
- Kernel file
./drivers/base/power/runtime.c
and the whole friend group, in this exact order, no skipping anyone (iykyk):
update_pm_runtime_accounting(9),pm_runtime_deactivate_timer(9),pm_runtime_cancel_pending(9),rpm_check_suspend_allowed(9),pm_runtime_release_supplier(9),__rpm_callback(9),rpm_callback(9),rpm_idle(9),rpm_suspend(9),rpm_resume(9),pm_runtime_work(9),pm_suspend_timer_fn(9),pm_schedule_suspend(9),__pm_runtime_idle(9),__pm_runtime_suspend(9),__pm_runtime_resume(9),pm_runtime_get_conditional(9),pm_runtime_get_if_active(9),pm_runtime_get_if_in_use(9),__pm_runtime_set_status(9),pm_runtime_barrier(9),pm_runtime_enable(9),devm_pm_runtime_set_active_enabled(9),devm_pm_runtime_enable(9),devm_pm_runtime_get_noresume(9),pm_runtime_forbid(9),pm_runtime_allow(9),pm_runtime_no_callbacks(9),pm_runtime_irq_safe(9),update_autosuspend(9),pm_runtime_set_autosuspend_delay(9),__pm_runtime_use_autosuspend(9),pm_runtime_init(9),pm_runtime_reinit(9),pm_runtime_remove(9),pm_runtime_get_suppliers(9),pm_runtime_put_suppliers(9),pm_runtime_drop_link(9),pm_runtime_force_suspend(9),pm_runtime_force_resume(9)
π ngl that SEE ALSO list is literally the entire runtime PM extended universe. ate and left no crumbs. π
okay that's the whole page bestie, you're officially fluent in runtime barriers π
this iconic little page lives in ./drivers/base/power, dated October 2026, and it's part of the Kernel API Manual β slay, bye! π¦β¨π
π¦ 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