i915_oa_poll_wait(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– i915_oa_poll_wait(9) πŸ’–

okay so bestie, welcome to the Kernel API Manual ✨ β€” we're talking about i915_oa_poll_wait today, and honestly? it's giving tiny-function-big-responsibility and we stan 🫢


✨ NAME ✨

i915_oa_poll_wait β€” literally just call poll_wait() for an OA stream poll(). that's the whole job. no cap πŸ’…


🌸 SYNOPSIS 🌸

void i915_oa_poll_wait (struct i915_perf_stream *stream , struct file
*file , poll_table *wait );

πŸŽ€ ARGUMENTS πŸŽ€

  • stream β€” an i915-perf stream that was opened for OA metrics πŸ‘‘
  • file β€” an i915 perf stream file πŸ¦‹
  • wait β€” the poll state table 🧚

πŸ’œ DESCRIPTION πŸ’œ

so here's the vibe check πŸ’« β€” when userspace is polling on an i915 perf stream that got opened for OA metrics, this function is the one that kicks things off: it starts a poll_wait with the wait queue that our hrtimer callback wakes up when it sees data ready to read in the circular OA buffer πŸ”₯

like, the hrtimer notices data, the wait queue gets woken, and your poll actually comes back. main character energy tbh πŸ‘‘


πŸ¦‹ SEE ALSO πŸ¦‹

the source of truth, living at kernel file ./drivers/gpu/drm/i915/i915_perf.c 🌈 β€” and then this whole friend group:


and that's the whole page, bestie, you ate that πŸ’…βœ¨ this one lives in ./drivers/gpu/drm/i915, dated October 2026, and it goes out to you with a big slay πŸŽ€πŸ’–πŸ¦‹ periodt ✨

πŸ“¦ where this page comes from