In the Linux kernel, the following vulnerability has been resolved:
drm/vmwgfx: validate external BO copy bounds for both stride paths
vmwexternalbo_copy() trusts caller-supplied offsets, strides, and heights and operates on imported dma-buf vmaps:
The offsets and strides are derived from STDU/SOU plane state, so a configured CRTC submitting a crafted atomic commit on an imported framebuffer can reach this path.
Validate the exact row-copy endpoint against each BO's size up front using checkmuloverflow() and checkaddoverflow(). Use the bulk memcpy() path only when widthinbytes covers the whole stride; otherwise copy one row at a time so partial-row updates near the bottom of a framebuffer remain valid. Also reject zero strides and stride < widthinbytes, both of which the row-by-row path cannot represent safely.