i915_vma_bind(9)
π i915_vma_bind(9) β a Kernel API Manual moment
okay bestie, welcome to the Kernel API Manual β¨ today's main character is i915_vma_bind, and honestly? she's doing a lot of behind-the-scenes work so your GPU can vibe.
π NAME π
i915_vma_bind β sets up PTEs for a VMA in its corresponding address space π«Ά
Like, that's the whole job. PTEs? Set up. Address space? Corresponding. Slay.
πΈ SYNOPSIS πΈ
int i915_vma_bind (struct i915_vma *vma , unsigned int pat_index , u32
flags , struct i915_vma_work *work , struct i915_vma_resource *vma_res
);
yes she takes five arguments, no she will not apologise π
π¦ ARGUMENTS π¦
vmaβ the VMA to map. literally the thing getting mapped, bestie πpat_indexβ the PAT index to set in the PTE. it's giving "which memory flavour" β¨flagsβ flags like global or local mapping. yes, the usual flag situation πworkβ a preallocated worker for allocating and binding the PTE. bestie came prepared, no mallocs on the fly πvma_resβ pointer to a preallocated vma resource. heads up: the resource is either consumed or freed. so likeβ¦ don't go touching it after, iykyk π
β DESCRIPTION β
so here's the tea π DMA addresses are taken from the scatter-gather table of this object β or of this VMA in case of non-default GGTT views β and then the PTE entries get set up. no cap, that's the whole ritual β¨
and lowkey the important detail: DMA addresses are also the only part of the SG table we care about. that's it. that's the part that matters. everything else in the SG table is justβ¦ there. minding its business π§
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/i915/i915_vma.cπ i915_vma_instance(9)i915_vma_insert(9)i915_ggtt_clear_scanout(9)
go read the source bestie, it's right there π
fr fr: this page lives under./drivers/gpu/drm/i915, dated October 2026, and it's pagei915_vma_bind(9). that's the whole footer, mwah π thanks for reading, ily, go bind some PTEs π«Άβ¨
π¦ 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