i915_request_await_object(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… i915_request_await_object(9) πŸ’…

okay bestie, welcome to the Kernel API Manual β€” yes this is i915_request_await_object(9), and no, it's not as scary as it sounds. sit down, grab a boba, let's get into it πŸ§‹βœ¨


✨ NAME ✨

i915_request_await_object β€” set this request to (async) wait upon a bo 🫢

like literally, you're telling a request to go wait on a buffer object. async. no cap.


🌸 SYNOPSIS 🌸

int i915_request_await_object (struct i915_request *to , struct
       drm_i915_gem_object *obj , bool write );

that's the whole vibe check right there πŸ’…


πŸŽ€ ARGUMENTS πŸŽ€

  • to β€” the request we are wishing to use πŸ₯Ί like this is the little guy who's gonna do the waiting
  • obj β€” the object which may be in use on another ring. yes, another ring. scandalous, i know πŸ’€
  • write β€” whether the wait is on behalf of a writer. so like, are we writing? are we just reading? this bool knows πŸ‘‘

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so this code is meant to abstract object synchronization with the GPU. that's the whole assignment. it's giving "we handle the messy parts so you don't have to" energy, fr fr.

conceptually we serialise writes between engines inside the GPU. the rule is simple and honestly iconic:

only one engine gets to write into a buffer at any time. but multiple readers? totally fine, they can all hang out. πŸ’–

to ensure each has a coherent view of memory, we must:

  • if there is an outstanding write request to the object, the new request must wait for it to complete (either CPU or in hw, requests on the same ring will be naturally ordered). no cutting the line, bestie πŸ™ˆ
  • if we are a write request (pending_write_domain is set), the new request must wait for outstanding read requests to complete. everybody out of the pool before we dive in 🌊

returns 0 if successful, else propagates up the lower layer error. so like, zero means slay, anything else means the error travels upward and you deal with it 😭


πŸ‘‘ SEE ALSO πŸ‘‘

go read those too, they're all in the same friend group 🫢✨


and that's the page!! written from ./drivers/gpu/drm/i915, dated October 2026, version i915_request_await_object(9) β€” mwah πŸ’‹ periodt. go sync some objects, bestie, you've got this πŸ’œπŸŒˆ

πŸ“¦ where this page comes from