amdgpu_bo_free_isp_user(9)
π amdgpu_bo_free_isp_user β the Kernel API Manual bestie moment
okay so we're in the Kernel API Manual, and today's main character is amdgpu_bo_free_isp_user(9). yes that's a long name, no i will not be shortening it, it's iconic as is. π
β¨ NAME β¨
amdgpu_bo_free_isp_user β free BO for isp use. that's it, that's the whole vibe. π«
πΈ SYNOPSIS πΈ
void amdgpu_bo_free_isp_user (struct amdgpu_bo *bo );
literally one argument, returns nothing (void), zero drama. slay. π«Ά
π¦ ARGUMENTS π¦
boβ the amdgpu isp user BO you want to free. that's the one, bestie. this is the BO catching a one-way flight out of here. π
π DESCRIPTION π
so what does it actually do? it unpins and unrefs the BO for isp internal use. unpin + unref, in that order, together, one function. it's giving cleanup era. β¨
and the reason this thing exists in the first place: this function is exported so that the V4L2 isp device, which lives external to the drm device, can free the isp user BO too. like, the isp device doesn't live inside drm, but it still gets to call this. friendship bracelet energy fr fr. π«Άπ₯
no cap, it's exported specifically for that outside-the-drm V4L2 isp situation β don't forget it has a reason to be public. π
π SEE ALSO π
first up, the actual source, in case you wanna read the receipts:
Kernel file ./drivers/gpu/drm/amd/amdgpu/amdgpu_object.c
and now, the whole extended friend group β every single one of these, in this exact order, no skipping (i would never):
amdgpu_object(9), amdgpu_bo_is_amdgpu_bo(9), amdgpu_bo_placement_from_domain(9), amdgpu_bo_create_reserved(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_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)
iykyk, that's a lot of BO lore. go read them, i'll wait. ππ
and that's the page!! π cute little sign-off time: this one lives under ./drivers/gpu/drm/amd/amdgpu, dated October 2026, and the whole thing is filed as amdgpu_bo_free_isp_user(9). mwah, bye bestie ππβ
π¦ 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