STRUCT VMW_BO_BLIT_LINE_DATA(9)
π struct vmw_bo_blit_line_data(9) β Kernel API Manual, bestie edition π
okay so this is a page from the Linux Kernel API manual, and it's literally about struct vmw_bo_blit_line_data β the convenience argument to vmw_bo_cpu_blit_line. it's giving "tiny struct, big responsibilities," and honestly? we're obsessed. π¦
β¨ NAME β¨
struct vmw_bo_blit_line_data β the convenience argument to vmw_bo_cpu_blit_line. that's it, that's the whole vibe. π«Ά
πΈ SYNOPSIS πΈ
here's the whole struct, exactly as it lives, no cap:
struct vmw_bo_blit_line_data {
u32 mapped_dst;
u8 *dst_addr;
struct page **dst_pages;
u32 dst_num_pages;
pgprot_t dst_prot;
u32 mapped_src;
u8 *src_addr;
struct page **src_pages;
u32 src_num_pages;
pgprot_t src_prot;
struct vmw_diff_cpy *diff;
};
like look at it. it's a whole little bundle of field energy. π
π Members π
welcome to the member-by-member tour, bestie, keep up π§
mapped_dstβ already mapped destination page index indst_pages. so it's like "we already did this one, she's mapped, move along." βdst_addrβ kernel virtual address of the mapped destination page. the address. of the destination. of the mapped one. iconic. πdst_pagesβ array of destination bo pages. very "a group chat, but for pages." πdst_num_pagesβ number of destination bo pages. yes, it counts them. someone has to. πdst_protβ destination bo page protection. protection! as inpgprot_t, not as in a bodyguard. keep up. π‘οΈmapped_srcβ already mapped source page index indst_pages. (yes, the original literally saysdst_pageshere β we're not touching it, that's exactly what the page says, periodt. π₯)src_addrβ kernel virtual address of the mapped source page. source edition. same energy, different side. πΈsrc_pagesβ array of source bo pages. the source group chat. πsrc_num_pagesβ number of source bo pages. math queen. πsrc_protβ source bo page protection.pgprot_tagain, obviously. πdiffβ structvmw_diff_cpy, and in the end it gets forwarded to the memcpy routine. so it's the passenger who rides all the way to the memcpy routine and hops out there. lowkey cute. π
π₯ SEE ALSO π₯
go read these next, bestie, they're all connected iykyk:
- Kernel file
./drivers/gpu/drm/vmwgfx/vmwgfx_blit.c vmw_find_first_diff(9)vmw_find_last_diff(9)vmw_memcpy(9)vmw_adjust_rect(9)vmw_diff_memcpy(9)vmw_bo_cpu_blit_line(9)vmw_bo_cpu_blit(9)
that's the whole page, no notes. this one lives in ./drivers/gpu/drm/vmwgfx, dated October 2026 β so mark your calendar, screenshot it, send it to the group chat, and slay your blit lines 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