pm_runtime_get(9)
π pm_runtime_get β the Kernel API Manual, bestie edition π
okay so real talk, this page is pm_runtime_get(9) from the Kernel API Manual and it's literally the "hey wake up, i need you" button for devices. tiny page, big main character energy. let's go π«Ά
β¨ NAME β¨
pm_runtime_get β bump up the usage counter and queue up a resume of a device. that's it, that's the whole job. no cap. π
π¦ SYNOPSIS π¦
int pm_runtime_get (struct device *dev );
like, that's the whole signature. she's short, she's sweet, she returns an int. β
π ARGUMENTS π
devβ the target device. the one you're hyping up. the main character. π
πΈ DESCRIPTION πΈ
so what actually happens: pm_runtime_get bumps up the runtime PM usage counter of dev, and then it queues up a work item to carry out the runtime-resume of it. β¨
the way i think about it: you're basically telling the kernel "bestie i need this device awake," and the counter going up is your receipt that you said that. the actual resume doesn't happen right this second, it gets queued as a work item β so it's giving "i've got you, i'm on my way" not "i'm already there." π§
counter up. work item queued. resume incoming. periodt. π
π SEE ALSO π
okay this is the part where the page goes absolutely feral with links, i'm obsessed. like literally the whole friend group shows up:
pm_suspend_ignore_children(9)pm_runtime_get_noresume(9)pm_runtime_put_noidle(9)pm_runtime_suspended(9)pm_runtime_active(9)pm_runtime_status_suspended(9)pm_runtime_enabled(9)pm_runtime_blocked(9)pm_runtime_has_no_callbacks(9)pm_runtime_mark_last_busy(9)pm_runtime_is_irq_safe(9)pm_runtime_idle(9)pm_runtime_suspend(9)pm_runtime_autosuspend(9)pm_runtime_resume(9)pm_request_idle(9)pm_request_resume(9)pm_request_autosuspend(9)pm_runtime_get_sync(9)pm_runtime_resume_and_get(9)pm_runtime_put(9)__pm_runtime_put_autosuspend(9)pm_runtime_put_autosuspend(9)pm_runtime_put_sync(9)pm_runtime_put_sync_suspend(9)pm_runtime_put_sync_autosuspend(9)pm_runtime_set_active(9)pm_runtime_set_suspended(9)pm_runtime_disable(9)pm_runtime_use_autosuspend(9)pm_runtime_dont_use_autosuspend(9)
and if you wanna read the source yourself, she lives in the kernel file ./include/linux/pm_runtime.h β go say hi, she doesn't bite π
ngl the see-also list is longer than the whole rest of the page and honestly? iconic. anyway go read pm_runtime_put(9) when you're done, you can't just get forever, that's not how any of this works π
and that's the whole page babes π this little gem comes from ./include/linux and is dated October 2026, filed under pm_runtime_get(9). go forth and bump those counters responsibly, mwah ππ
π¦ 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