vmw_bo_pin_in_vram_or_gmr(9)
π vmw_bo_pin_in_vram_or_gmr(9) β the "put this buffer in vram or gmr" moment π
Okay bestie, welcome to the Kernel API Manual entry for vmw_bo_pin_in_vram_or_gmr. Yes that's a mouthful, but it's literally just a helper that moves a buffer over to vram or gmr, and we're gonna get through it together π«Ά
β¨ NAME β¨
vmw_bo_pin_in_vram_or_gmr β Move a buffer to vram or gmr. That's the whole vibe. No cap.
π SYNOPSIS π
int vmw_bo_pin_in_vram_or_gmr (struct vmw_private *dev_priv , struct
vmw_bo *buf , bool interruptible );
Look at that signature slaying exactly as written. Don't touch it, don't "fix" the spacing, just appreciate it π
π ARGUMENTS π
dev_privβ Driver private. It's the driver's own little private stash, iykyk.bufβ DMA buffer to move. The actual buffer being moved, main character energy fr.interruptibleβ Use interruptible wait. Set this and the wait is interruptible; that's the whole thing π
π¦ DESCRIPTION π¦
So here's what happens, bestie: this function takes the reservation_sem in write mode. Yeah. Write mode. It's not playing around.
Then it flushes and unpins the query bo to avoid failures. That's it, that's the description β flushes it, unpins it, avoids the failures, periodt β¨
πΈ RETURN πΈ
- Zero on success β slay π
- Negative error code on failure.
- In particular
-ERESTARTSYSif it gets interrupted by a signal π that's the one to remember.
π₯ SEE ALSO π₯
Kernel file ./drivers/gpu/drm/vmwgfx/vmwgfx_bo.c β and all of these icons, because the kernel is one big friend group:
vmw_bo_free(9)vmw_bo_pin_in_placement(9)vmw_bo_pin_in_vram(9)vmw_bo_pin_in_start_of_vram(9)vmw_bo_unpin(9)vmw_bo_get_guest_ptr(9)vmw_bo_pin_reserved(9)vmw_bo_map_and_cache(9)vmw_bo_unmap(9)vmw_bo_init(9)vmw_user_bo_synccpu_grab(9)vmw_user_bo_synccpu_release(9)vmw_user_bo_synccpu_ioctl(9)vmw_bo_unref_ioctl(9)vmw_user_bo_lookup(9)vmw_bo_fence_single(9)vmw_bo_swap_notify(9)vmw_bo_move_notify(9)
And that's the whole page, bestie π§ This cutie came from the kernel source tree at ./drivers/gpu/drm/vmwgfx, dated October 2026, and it's part of the Kernel API Manual. Go forth and pin responsibly ππ
π¦ 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