drm/vmwgfx: Fix a width / pitch mismatch on framebuffer updates
When the framebuffer is a vmwgfx dma buffer and a proxy surface is created, the vmw_kms_update_proxy() function requires that the proxy surface width and the framebuffer pitch are compatible, otherwise display corruption occurs as seen in gnome-shell/native with software 3D. Since the framebuffer pitch is determined by user-space, allocate a proxy surface the width of which is based on the framebuffer pitch rather than on the framebuffer width. Cc: <stable@vger.kernel.org> Reported-by: NRaphael Hertzog <buxy@kali.org> Tested-by: NMati Aharoni <muts@kali.org> Signed-off-by: NThomas Hellstrom <thellstrom@vmware.com> Reviewed-by: NBrian Paul <brianp@vmware.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
Showing
想要评论请 注册 或 登录