amdgpu_bo_create_reserved(9)
π amdgpu_bo_create_reserved(9) β like, the whole glow-up
okay so bestie, welcome to the Kernel API Manual, section 9, where we talk about amdgpu_bo_create_reserved. it's giving "kernel-internal buffer object, but make it reserved." no cap, this one's a baddie β¨
πΈ NAME πΈ
amdgpu_bo_create_reserved β create a reserved BO for kernel use π
β¨ SYNOPSIS β¨
int amdgpu_bo_create_reserved (struct amdgpu_device *adev , unsigned
long size , int align , u32 domain , struct amdgpu_bo **bo_ptr , u64
*gpu_addr , void **cpu_addr );
like, that's the whole signature. she's long but she's iconic π
π«Ά ARGUMENTS π«Ά
adevβ the amdgpu device object. the main character, honestly πsizeβ how big your new BO should be πalignβ the alignment for the new BO. yes it matters, don't skip it πdomainβ where to place it. location, location, location π¦bo_ptrβ used to initialize BOs in structures π₯gpu_addrβ the GPU addr of the pinned BO. pinned = she's staying put βcpu_addrβ optional CPU address mapping. optional bestie, key word optional π
π§ DESCRIPTION π§
so what does she actually do? she allocates and pins a BO for kernel internal use, then hands it back to you still reserved. that's the whole vibe. allocated, pinned, reserved, done. periodt π
π NOTE π
real talk for a sec: forbo_ptr, the new BO is only created ifbo_ptrpoints toNULL. like, if it's not NULL, nothing gets made. iykyk π
π RETURN π
0on success π- a negative error code otherwise π (she said "no" and she meant it)
π₯ SEE ALSO π₯
kernel file ./drivers/gpu/drm/amd/amdgpu/amdgpu_object.c π
and the whole friend group, fr fr:
amdgpu_object(9), amdgpu_bo_is_amdgpu_bo(9), amdgpu_bo_placement_from_domain(9), amdgpu_bo_create_kernel(9), amdgpu_bo_create_isp_user(9), amdgpu_bo_create_kernel_at(9), amdgpu_bo_free_kernel(9), amdgpu_bo_free_isp_user(9), amdgpu_bo_create(9), amdgpu_bo_create_user(9), amdgpu_bo_create_vm(9), amdgpu_bo_kmap(9), amdgpu_bo_kptr(9), amdgpu_bo_kunmap(9), amdgpu_bo_ref(9), amdgpu_bo_unref(9), amdgpu_bo_pin(9), amdgpu_bo_unpin(9), amdgpu_bo_init(9), amdgpu_bo_fini(9), amdgpu_bo_set_tiling_flags(9), amdgpu_bo_get_tiling_flags(9), amdgpu_bo_set_metadata(9), amdgpu_bo_get_metadata(9), amdgpu_bo_move_notify(9), amdgpu_bo_release_notify(9), amdgpu_bo_fault_reserve_notify(9), amdgpu_bo_fence(9), amdgpu_bo_sync_wait_resv(9), amdgpu_bo_sync_wait(9), amdgpu_bo_gpu_offset(9), amdgpu_bo_fb_aper_addr(9), amdgpu_bo_gpu_offset_no_check(9), amdgpu_bo_mem_stats_placement(9), amdgpu_bo_get_preferred_domain(9), amdgpu_bo_print_info(9)
okay that's the whole page!! π she lives in ./drivers/gpu/drm/amd/amdgpu, she's dated October 2026, and she's serving Kernel API Manual energy from the amdgpu_bo_create_reserved(9) page. mwah πβ¨
π¦ 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