ttm_bo_move_sync_cleanup(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ttm_bo_move_sync_cleanup(9) ✨

okay so bestie, welcome to the Kernel API Manual 🫢 β€” this one's from the DRM/TTM corner of the kernel and it's literally just "wait for the move to be done, then clean up." iconic, low-effort, effective. no cap.


✨ NAME ✨

ttm_bo_move_sync_cleanup β€” cleanup by waiting for the move to finish 🌸


πŸŽ€ SYNOPSIS πŸŽ€

void ttm_bo_move_sync_cleanup (struct ttm_buffer_object *bo , struct
       ttm_resource *new_mem );

that's the whole thing. void return, two args, no drama πŸ’…


πŸ¦‹ ARGUMENTS πŸ¦‹

  • bo β€” a pointer to a struct ttm_buffer_object. yes, the buffer object itself, the main character πŸ‘‘
  • new_mem β€” a struct ttm_resource indicating where to move. it's giving "destination address" energy ✨

πŸ’– DESCRIPTION πŸ’–

okay so this is a special case of ttm_bo_move_accel_cleanup, and the special part is that the caller guarantees the bo is idle. like, guaranteed-guaranteed. the caller pinky-swears it 🀝

typically it gets used after memcpy buffer moves β€” that's literally the vibe. so you memcpy'd your buffer, everyone's chill, and now you sync up and clean up.

⚠️ note the caveat: the bo being idle is on you, the caller. this function isn't doing the vibe check for you, it's trusting you already did it πŸ™ˆ

πŸ”₯ SEE ALSO πŸ”₯

kernel file ./drivers/gpu/drm/ttm/ttm_bo_util.c and the whole friend group:

the whole squad, fr fr 🧚


🌈 sign-off 🌈

that's the page, bestie! it lives at ./drivers/gpu/drm/ttm, it's dated October 2026, and it goes by ttm_bo_move_sync_cleanup(9) πŸ’œ go wait on that move and be free βœ¨πŸ’–πŸŽ€

πŸ“¦ where this page comes from