ttm_bo_move_accel_cleanup(9)
π ttm_bo_move_accel_cleanup β like, the manual page bestie
Okay so this is a Kernel API Manual page for ttm_bo_move_accel_cleanup(9) β the cleanup helper for hw copies, iykyk. Buckle up, it's giving DRM internals and honestly it ate. π
β¨ NAME β¨
ttm_bo_move_accel_cleanup β the cleanup helper for hw copies, bestie. Literally that's her whole job. π
πΈ SYNOPSIS πΈ
int ttm_bo_move_accel_cleanup (struct ttm_buffer_object *bo , struct
dma_fence *fence , bool evict , bool pipeline , struct ttm_resource
*new_mem );
Yeah she returns an int. Petite function signature, main character energy. β¨
π¦ ARGUMENTS π¦
boβ a pointer to astruct ttm_buffer_object. That's the buffer bestie in question. π«Άfenceβ a fence object that signals when moving is complete. She's the one who texts you "we're done here" ngl. πevictβ this is an evict move. Like, don't return until the buffer is idle. No cap, you gotta wait. πpipelineβ evictions are to be pipelined. Very "we do things in parallel around here" of her. βnew_memβ astruct ttm_resourceindicating where to move. The destination, the new vibe, the relocation address. π¦
π₯ DESCRIPTION π₯
So this is the accelerated move function, and you call it when an accelerated move has been scheduled. Not before, not vibes-only β when it's been scheduled. π
What she does: the function creates a new temporary buffer object representing the old placement π, and then puts the sync object on both buffer objects. Both of them. Equal treatment, we love to see it. π
After that, the newly created buffer object is unref'd β so it gets destroyed when the move is complete. It's giving "I'll clean myself up, don't worry about me." π And this, right here, is what helps pipeline buffer moves. Iconic. π
π SEE ALSO π
Go read these, bestie, they're all in the kernel file ./drivers/gpu/drm/ttm/ttm_bo_util.c:
ttm_move_memcpy(9)ttm_bo_move_memcpy(9)ttm_buffer_object_transfer(9)ttm_io_prot(9)ttm_bo_kmap_try_from_panic(9)ttm_bo_kmap(9)ttm_bo_kunmap(9)ttm_bo_vmap(9)ttm_bo_vunmap(9)ttm_bo_move_sync_cleanup(9)ttm_bo_pipeline_gutting(9)ttm_lru_walk_for_evict(9)ttm_bo_lru_cursor_fini(9)ttm_bo_lru_cursor_init(9)ttm_bo_lru_cursor_next(9)ttm_bo_lru_cursor_first(9)ttm_bo_shrink(9)ttm_bo_shrink_suitable(9)ttm_bo_shrink_avoid_wait(9)
π Whole little family ofttm_bo_*friends in there β go say hi, they're all linked from./drivers/gpu/drm/ttm.
That's the whole page, bestie! Source and version vibes: the ./drivers/gpu/drm/ttm section, dated October 2026, page ttm_bo_move_accel_cleanup(9). Slay, go move some buffers. πβ¨ππ¦
π¦ 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