vmw_kms_stdu_readback(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… vmw_kms_stdu_readback β€” like, the readback one, from the Kernel API Manual bestie πŸ’–

okay so picture this: you're doing a readback from a buffer-object backed framebuffer and the screen target system at the same time. that's the whole vibe. this function is the main character of this page, and yes, it's in the Kernel API Manual ✨


🌸 SYNOPSIS 🌸

int vmw_kms_stdu_readback (struct vmw_private *dev_priv , struct
drm_file *file_priv , struct vmw_framebuffer *vfb , struct
drm_vmw_fence_rep __user *user_fence_rep , struct drm_clip_rect *clips ,
struct drm_vmw_rect *vclips , uint32_t num_clips , int increment ,
struct drm_crtc *crtc );

like, that's a lot of arguments and honestly? iconic. let's go through them one by one πŸ‘‘


πŸŽ€ ARGUMENTS πŸŽ€

  • dev_priv β€” pointer to the device private structure. you know the one πŸ’–
  • file_priv β€” pointer to a struct drm-file that identifies the caller. ngl you can set this to NULL, but then user_fence_rep has to be NULL too. no cap, they go together, it's a package deal 🫢
  • vfb β€” pointer to the buffer-object backed framebuffer. slay.
  • user_fence_rep β€” the user-space provided structure for fence info. fences are so fetch.
  • clips β€” array of clip rects. heads up: either clips or vclips must be NULL. one of them. not both. pick a lane πŸ’…
  • vclips β€” the alternate array of clip rects. and yeah, same rule: either clips or vclips must be NULL 😭
  • num_clips β€” how many clip rects are chilling in clips or vclips. literally just the count.
  • increment β€” the increment you use when looping over clips or vclips. loops are lowkey everywhere.
  • crtc β€” if crtc is passed, perform stdu dma on that crtc only. very exclusive, very main character energy ✨

πŸ¦‹ DESCRIPTION πŸ¦‹

so if you're DMA-ing till the screen target system, this function will also notify the screen target system that a bounding box of the cliprects has been updated. the way it just... tells on itself. obsessed πŸ’–


⭐ RETURN ⭐

  • 0 on success 😌
  • a negative error code on failure πŸ™ˆ
  • -ERESTARTSYS if interrupted β€” like when someone rudely cuts you off mid-syscall πŸ’€

🌈 SEE ALSO 🌈

bestie, the whole friend group is here. kernel file ./drivers/gpu/drm/vmwgfx/vmwgfx_stdu.c plus:


ok that's the whole page, fr fr. no gatekeeping, every flag and reference is right there πŸ’œ

and that's a wrap, bestie πŸŽ€ this gem lives in ./drivers/gpu/drm/vmwgfx, version dated October 2026, and it's literally called vmw_kms_stdu_readback(9) if you need to find it again. mwah πŸ’‹

πŸ“¦ where this page comes from