pm_runtime_force_suspend(9)
π pm_runtime_force_suspend(9) π
Kernel API Manual β yes bestie, that's the manual name, and we're folding it in right here at the top. π«Ά
π NAME π
pm_runtime_force_suspend β Force a device into suspend state if needed. periodt.
β¨ SYNOPSIS β¨
int pm_runtime_force_suspend (struct device *dev );
π¦ ARGUMENTS π¦
devβ Device to suspend. That's the main character right there.
π₯ DESCRIPTION π₯
Okay so here's the tea: this disables runtime PM so we can safely check the device's runtime PM status. If it's active, it invokes its ->runtime_suspend callback to suspend it and changes its runtime PM status field to RPM_SUSPENDED. Slay. β¨
Also, if the device's usage and children counters don't indicate that the device was in use before the system-wide transition under way, it decrements its parent's children counter (if there is a parent). Keep runtime PM disabled to preserve the state unless we encounter errors. No cap, that part matters.
Typically this function may be invoked from a system suspend callback to make sure the device is put into low power state, and it should only be used during system-wide PM transitions to sleep states. It assumes that the analogous pm_runtime_force_resume will be used to resume the device. Lowkey iconic teamwork. π
π SEE ALSO π
- Kernel file
./drivers/base/power/runtime.c 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_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_resume(9)
π That's the vibe check, bestie β this page is from ./drivers/base/power and dated October 2026. π«Ά
π¦ 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