pm_runtime_get(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– 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:

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