xe_pm_block_on_suspend(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– xe_pm_block_on_suspend(9) πŸ’–

okay so real talk, this is a page from the Kernel API Manual and it's all about xe_pm_block_on_suspend β€” one tiny little function with big "don't talk to me while I'm getting ready" energy. bestie, let's get into it πŸŽ€


✨ NAME ✨

xe_pm_block_on_suspend β€” block pending suspend. that's it. that's the whole vibe. πŸ’…


🌸 SYNOPSIS 🌸

int xe_pm_block_on_suspend (struct xe_device *xe );

literally one function, one argument, one int coming back at ya. iconic. ✨


πŸ¦‹ ARGUMENTS πŸ¦‹

  • xe β€” the xe device that's about to be suspended. like, the main character of this whole situation.

πŸ’œ DESCRIPTION πŸ’œ

so here's the tea 🍡 β€” this function blocks if the pm notifier has started evicting bos, and the whole point is to avoid racing and validating those bos back. no cap, that's the reason. 😭

the function is annotated to make sure you're not holding any locks that are also grabbed in the pm notifier or in the device suspend / resume. so like... don't be that girl holding a lock she shouldn't. πŸ™ˆ

this is intended to be used by freezable tasks only β€” not freezable workqueues, i'm begging you. the intention is that the function returns -ERESTARTSYS when tasks are frozen during suspend, which lets the task go ahead and freeze. 🧊

⚠️ heads up bestie: the caller must be able to handle the -ERESTARTSYS. if your caller can't handle it, do not pass go, do not collect $200. πŸ’€

πŸ‘‘ RETURN πŸ‘‘

  • 0 β€” on success, slay ✨
  • -ERESTARTSYS β€” on signal pending, or if freezing was requested πŸ₯Ά

🌈 SEE ALSO 🌈

okay this list is long and honestly it ate. here's the whole squad, and also where to find the kernel file:

kernel file ./drivers/gpu/drm/xe/xe_pm.c β€” Xe Power Management(9), plus:


that's the whole page, bestie. no crumbs left. 🫢

so yeah β€” this lives in ./drivers/gpu/drm/xe, dated October 2026, and it's xe_pm_block_on_suspend(9) through and through. go block that suspend responsibly, mwah πŸ’‹ periodt 🌈⭐

πŸ“¦ where this page comes from