i915_vma_resource_init(9)
π i915_vma_resource_init(9) π
okay so bestie, welcome to the Kernel API Manual β¨ β this is literally the page for i915_vma_resource_init, and it's about to be your new fave. buckle up π
πΈ NAME πΈ
i915_vma_resource_init β Initialize a vma resource. that's it, that's the vibe π
β¨ SYNOPSIS β¨
void i915_vma_resource_init (struct i915_vma_resource *vma_res , struct
i915_address_space *vm , struct sg_table *pages , const struct
i915_page_sizes *page_sizes , struct i915_refct_sgt *pages_rsgt , bool
readonly , bool lmem , struct intel_memory_region *mr , const struct
i915_vma_ops *ops , void *private , u64 start , u64 node_size , u64 size
, u32 guard );
like, yes, that's a lot of arguments. she's high-maintenance and we love her for it π
π¦ ARGUMENTS π¦
vma_resβ The vma resource to initialize. the main character of this whole operation π«Άvmβ Pointer to the vm.pagesβ The pages sg-table.page_sizesβ Page sizes of the pages. she knows her measurements πpages_rsgtβ Pointer to astruct i915_refct_sgtof an object with delayed destruction. delayed, not cancelled β do not come for her πreadonlyβ Whether the vma should be bound read-only. no writing allowed, hands off π«lmemβ Whether the vma points to lmem.mrβ The memory region of the object the vma points to.opsβ The backend ops.privateβ Bind backend private info. her diary, basically πstartβ Offset into the address space of bind range start after padding.node_sizeβ Size of the allocated range manager node minus padding. minus! padding! πsizeβ Bind size.guardβ The size of the guard area preceding and trailing the bind. she comes with security, literally both sides π‘οΈ
π DESCRIPTION π
Initializes a vma resource allocated using i915_vma_resource_alloc. π
and the reason there's a separate allocate function and an initialize function? not just vibes, bestie β it's because initialization may need to be performed from under a lock where allocation is not allowed. so like, you literally can't allocate at that moment. no cap π
π SEE ALSO π
Kernel file ./drivers/gpu/drm/i915/i915_vma_resource.h
struct i915_vma_bindinfo(9)struct i915_vma_resource(9)i915_vma_resource_get(9)i915_vma_resource_put(9)
all her friends. go read them too, iykyk πβ¨
π that's the whole page, you ate that. go initialize something iconic π
luv u, bye β this masterpiece came from ./drivers/gpu/drm/i915, dated October 2026 πβ¨
π¦ 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