vmw_user_bo_synccpu_grab(9)
β¨ vmw_user_bo_synccpu_grab(9) β¨
okay bestie, welcome to the Kernel API Manual π β today we're learning about vmw_user_bo_synccpu_grab, which is literally the function that grabs a struct vmw_bo for CPU access π«Ά
πΈ NAME πΈ
vmw_user_bo_synccpu_grab β grab a struct vmw_bo for cpu access, idle previous GPU operations on the buffer, and optionally block it for further command submissions. no cap, that's the whole vibe check π
π¦ SYNOPSIS π¦
int vmw_user_bo_synccpu_grab (struct vmw_bo *vmw_bo , uint32_t flags );
π ARGUMENTS π
vmw_boβ Pointer to the buffer object being grabbed for CPU access. this is the main character of the operation β¨flagsβ Flags indicating how the grab should be performed. iykyk, they change the whole energy of the grab π
π₯ RETURN π₯
Zero on success, negative error code on error. fr fr, that's it. but lowkey there are two specific ones you should know about π
-EBUSYβ returned if a dontblock operation is requested and the buffer object is busy π like, it's occupied, come back later-ERESTARTSYSβ returned if a wait is interrupted by a signal π rude but valid
π DESCRIPTION π
A blocking grab will be automatically released when tfile is closed. literally so convenient, it cleans up after itself π§β¨
π SEE ALSO π
Kernel file ./drivers/gpu/drm/vmwgfx/vmwgfx_bo.c, plus the whole friend group π«Ά:
vmw_bo_free(9)vmw_bo_pin_in_placement(9)vmw_bo_pin_in_vram_or_gmr(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_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 page bestie π it lives in ./drivers/gpu/drm/vmwgfx and it's dated October 2026 β write that down, slay, periodt ππ
π¦ 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