radeon_vm_bo_set_addr(9)
π radeon_vm_bo_set_addr(9) π
okay so this is a page straight out of the Kernel API Manual, bestie β it's radeon_vm_bo_set_addr(9) and it's literally the glow-up where a buffer object gets told where to sit inside a virtual memory space. sit down, this is gonna be good π
β¨ NAME β¨
radeon_vm_bo_set_addr β set bos virtual address inside a vm
like. the whole entire job. that's it. that's the function π«Ά
β¨ SYNOPSIS β¨
int radeon_vm_bo_set_addr (struct radeon_device *rdev , struct
radeon_bo_va *bo_va , uint64_t soffset , uint32_t flags );
she returns an int, she takes four things, she's booked and busy π
β¨ ARGUMENTS β¨
rdevβ aradeon_devicepointer, aka the whole GPU device vibe check πbo_vaβ thebo_vathat's gonna store the address. she's the one holding the receipt π§Ύsoffsetβ the requested offset of the buffer inside the VM address space. where you want her to live, lowkey π‘flagsβ attributes of the pages, so like read/write/valid/etc. the whole personality sheet π
β¨ DESCRIPTION β¨
So what she actually does: she sets the offset of bo_va (cayman+ only, iykyk β¨). She validates the offset you requested and then sets it within the vm address space. Returns 0 for success, error for failure β classic bestie behaviour, she'll tell you if it went wrong π
β οΈ ok so important, do NOT skip this one β the object has to be reserved before you call her, and it gets unreserved by this function! so like. she takes the lock off herself. don't be weird about it. no cap π
β¨ SEE ALSO β¨
the whole friend group fr fr β and the kernel file she lives in: ./drivers/gpu/drm/radeon/radeon_vm.c π
radeon_vm_num_pdes(9)radeon_vm_directory_size(9)radeon_vm_manager_init(9)radeon_vm_manager_fini(9)radeon_vm_get_bos(9)radeon_vm_grab_id(9)radeon_vm_flush(9)radeon_vm_fence(9)radeon_vm_bo_find(9)radeon_vm_bo_add(9)radeon_vm_set_pages(9)radeon_vm_clear_bo(9)radeon_vm_map_gart(9)radeon_vm_page_flags(9)radeon_vm_update_page_directory(9)radeon_vm_frag_ptes(9)radeon_vm_update_ptes(9)radeon_vm_fence_pts(9)radeon_vm_bo_update(9)radeon_vm_clear_freed(9)radeon_vm_clear_invalids(9)radeon_vm_bo_rmv(9)radeon_vm_bo_invalidate(9)radeon_vm_init(9)radeon_vm_fini(9)
and that's the page, periodt π
this queen lives at ./drivers/gpu/drm/radeon, dated October 2026 β mwah, go reserve your object bestie, ily, bye ππ¦πΈ
π¦ 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