xe_validation_retry_on_oom(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… xe_validation_retry_on_oom β€” the Kernel API Manual, bestie edition ✨

okay so real talk, this one lives in the Kernel API Manual and it's called xe_validation_retry_on_oom(9) and it does exactly one dramatic thing: it gives your transaction a second chance when memory goes poof. 🫢


🌸 NAME 🌸

xe_validation_retry_on_oom β€” Retry on oom in an xe_validaton transaction

not me pointing out that "xe_validaton" is their spelling, not mine 😭 i'm just the messenger, i don't edit the lore

✨ SYNOPSIS ✨

xe_validation_retry_on_oom (_ctx , _ret );

πŸŽ€ ARGUMENTS πŸŽ€

  • _ctx β€” Pointer to the xe_validation_ctx πŸ‘‘ like, the whole context of your validation situation
  • _ret β€” The current error value, possibly holding -ENOMEM πŸ’€ this is the little guy that tells you whether you ran out of memory

πŸ¦‹ DESCRIPTION πŸ¦‹

Use this in a way similar to drm_exec_retry_on_contention. πŸ’«

So here's the tea: if _ret contains -ENOMEM, the transaction gets restarted once β€” and it's restarted in a way that blocks other transactions and allows exhastive eviction. πŸ”₯

(yes, "exhastive" is exactly how it's written in the original, she's built different, i'm not touching it πŸ’€)

But β€” and this is the important part bestie β€” if the transaction was already restarted once, Just return the -ENOMEM. no third chances, no extra chaos, we're done. πŸ™ˆ

It may also set _ret to -EINTR if it's not retrying and waits are interruptible. ⭐

🚨 and the big one: this may only be used within a drm_exec_until_all_locked loop. like, that's the rule, that's the vibe check, do not freelance this one 😭

🌈 SEE ALSO 🌈


mwah πŸ’– that's the whole page, go forth and retry responsibly. this icon was brought to you by ./drivers/gpu/drm/xe, dated October 2026 β€” slay, see you in the next one πŸŽ€πŸ¦‹βœ¨

πŸ“¦ where this page comes from