i915_perf_r...config_ioctl(9)
π i915_perf_remove_config_ioctl(9) β a Kernel API Manual moment
okay so this is a page from the Kernel API Manual bestie, and the title up top is literally rendered as i915_perf_r...config_ioctl(9) because the whole name is too iconic to fit (it's the classic man-page truncation vibe, not a typo fr fr).
β¨ NAME β¨
i915_perf_remove_config_ioctl β the DRM ioctl() that lets userspace yeet an OA config out of existence ποΈβ¨
πΈ SYNOPSIS πΈ
int i915_perf_remove_config_ioctl (struct drm_device *dev , void *data ,
struct drm_file *file );
π ARGUMENTS π
devβ the drm device, the main character of this whole operation πdataβ the ioctl data (a pointer to au64integer) copied from userspace π«Άfileβ the drm file π¦
π DESCRIPTION π
okay so here's the tea β: configs can totally be removed while they're being used. Like, no drama, it's fine.
The way that works is β the config stops appearing in sysfs (gone, ghosted, bye π), and its content gets freed later, when the stream that's using that config is closed. So it's giving "we'll deal with the cleanup when the stream wraps up" energy π
β RETURN β
0 on success, or a negative error code on failure. slay when it's 0, sad girl hours when it's negative π
π¦ SEE ALSO π¦
- the kernel file
./drivers/gpu/drm/i915/i915_perf.c i915 Perf Overview(9)i915 Perf History and Comparison with Core Perf(9)OA Tail Pointer Race(9)struct perf_open_properties(9)oa_buffer_check_unlocked(9)append_oa_status(9)append_oa_sample(9)gen8_append_oa_reports(9)gen8_oa_read(9)gen7_append_oa_reports(9)gen7_oa_read(9)i915_oa_wait_unlocked(9)i915_oa_poll_wait(9)i915_oa_read(9)oa_get_render_ctx_id(9)oa_put_render_ctx_id(9)i915_oa_stream_enable(9)i915_oa_stream_disable(9)i915_oa_stream_init(9)i915_perf_read(9)i915_perf_poll_locked(9)i915_perf_poll(9)i915_perf_enable_locked(9)i915_perf_disable_locked(9)i915_perf_ioctl_locked(9)i915_perf_ioctl(9)i915_perf_destroy_locked(9)i915_perf_release(9)i915_perf_open_ioctl_locked(9)read_properties_unlocked(9)i915_perf_open_ioctl(9)i915_perf_register(9)i915_perf_unregister(9)i915_perf_add_config_ioctl(9)i915_perf_init(9)i915_perf_fini(9)i915_perf_ioctl_version(9)
like, that's the whole friend group right there π«Ά no cap, they all ate π
ngl bestie, if you're poking at OA configs from userspace, read the whole squad above before you touch anything β the perf overview and the tail pointer race pages are especially the ones you don't wanna skip π
and that's the page!! source lives at ./drivers/gpu/drm/i915, it's dated October 2026, and the footer keeps the same truncated i915_perf_r...config_ioctl(9) title. periodt πβ¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms