i915_perf_disable_locked(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… i915_perf_disable_locked β€” a Kernel API Manual moment

okay so bestie, welcome to the Kernel API Manual entry for i915_perf_disable_locked(9) β€” yes that's the whole title, yes it's a mouthful, no we're not shortening it, it's iconic as-is πŸŽ€


✨ NAME ✨

i915_perf_disable_locked β€” handles the I915_PERF_IOCTL_DISABLE ioctl, that's literally the whole job 🫢


🌸 SYNOPSIS 🌸

void i915_perf_disable_locked (struct i915_perf_stream *stream );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • stream β€” an enabled i915 perf stream. like, it has to be enabled already, that's the vibe check it needs to pass ✨

πŸ’– DESCRIPTION πŸ’–

So what this does is it disables the associated capture of data for this stream. that's it, that's the function, and she ate πŸ’…

The intention here β€” the dream, the vision β€” is that disabling then re-enabling a stream will ideally be cheaper than straight-up destroying it and re-opening a whole new stream with the same configuration. lowkey a glow-up instead of a full rebrand, y'know? 🧚

but ngl, there are no formal guarantees about what state or buffered data must be retained between disabling and re-enabling a stream. so don't come for her if your buffered data ghosted you 😭

⭐ NOTE ⭐

while a stream is disabled, it's considered an error for userspace to attempt to read from the stream, and that error is -EIO. so like… don't do that. read the room (and the stream state) fr fr πŸ’€


🌈 SEE ALSO 🌈

Kernel file ./drivers/gpu/drm/i915/i915_perf.c β€” and honestly the whole extended friend group:


and that's the whole page, bestie β€” mwah πŸ’‹

shoutout to the source dir ./drivers/gpu/drm/i915, the version stamp October 2026, and the manual itself for hosting this little legend. go forth and disable responsibly πŸ‘‘βœ¨

πŸ“¦ where this page comes from