pm_genpd_remove(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… pm_genpd_remove(9) β€” from the Kernel API Manual, bestie ✨

okay so this is page pm_genpd_remove(9) out of the Kernel API Manual, and it's literally the "how do I get rid of a generic I/O PM domain" page πŸŽ€ yes we're doing removal today, main character energy only.


🌸 NAME 🌸

pm_genpd_remove β€” Remove a generic I/O PM domain. that's it. that's the whole vibe. bye bye domain πŸ‘‹


✨ SYNOPSIS ✨

int pm_genpd_remove (struct generic_pm_domain *genpd );

it returns an int, it takes exactly one pointer, no cap 🫢


πŸ¦‹ ARGUMENTS πŸ¦‹

  • genpd β€” Pointer to PM domain that is to be removed. like, the domain you're sending to the shadow realm. this is your target, bestie πŸ’…

πŸ’– DESCRIPTION πŸ’–

so to actually remove the PM domain, this function does two things, and honestly? efficient queen behavior:

  • Removes the PM domain as a subdomain to any parent domains, if it was added. (note the if it was added β€” we're not out here detaching things that were never attached, okay? πŸ™ˆ)
  • Removes the PM domain from the list of registered PM domains.

and now the part where you gotta listen, because this is the vibe check πŸ‘‘ β€” the PM domain will only be removed if all of these are true:

  • the associated provider has been removed,
  • it is not a parent to any other PM domain,
  • and it has no devices associated with it.
so if it's still somebody's parent, or still got devices hanging onto it, or the provider's still around β€” no removal for you, bestie. the function is not gonna force it. it's giving "respect the boundaries" energy πŸ˜­πŸ’€

⭐ SEE ALSO ⭐

Kernel file ./drivers/pmdomain/core.c β€” that's the source, go read it, iykyk 🧚

and the whole extended friend group of related pages, in order, no skips:


and that's the page!! 🌈 this lil drop is from ./drivers/pmdomain and it's dated October 2026 β€” so go forth, remove that domain only when it's truly ready to go, and slay πŸ’œπŸ«ΆπŸŽ€

πŸ“¦ where this page comes from