linux/drivers/gpu/drm/vmwgfx
Thomas Hellstrom a50e2bf5a0 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: Raphael Hertzog <buxy@kali.org>
Tested-by:  Mati Aharoni <muts@kali.org>
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2016-01-14 07:56:46 +10:00
..
device_include drm/vmwgfx: Update device includes for DX device functionality 2015-08-12 10:06:26 -07:00
Kconfig drm/vmwgfx: Only build on X86 2015-09-17 02:13:42 -07:00
Makefile drm/vmwgfx: Initial DX support 2015-08-12 10:06:32 -07:00
vmwgfx_binding.c drm/vmwgfx: Initial DX support 2015-08-12 10:06:32 -07:00
vmwgfx_binding.h drm/vmwgfx: Initial DX support 2015-08-12 10:06:32 -07:00
vmwgfx_buffer.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_cmdbuf_res.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_cmdbuf.c drm/vmwgfx: Fix an incorrect lock check 2016-01-14 07:56:44 +10:00
vmwgfx_context.c Merge branch 'vmwgfx-next' of git://people.freedesktop.org/~thomash/linux into drm-next 2015-08-17 16:03:48 +10:00
vmwgfx_cotable.c drm/vmwgfx: Fix uninitialized return in vmw_cotable_unbind() 2015-09-24 00:20:37 -07:00
vmwgfx_dmabuf.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_drv.c drm/vmwgfx: Implement the cursor_set2 callback v2 2015-12-08 12:55:46 +01:00
vmwgfx_drv.h drm/vmwgfx: Implement the cursor_set2 callback v2 2015-12-08 12:55:46 +01:00
vmwgfx_execbuf.c drm/vmwgfx: Fix up user_dmabuf refcounting 2015-09-14 01:13:11 -07:00
vmwgfx_fb.c drm/vmwgfx: Fix a circular locking dependency in the fbdev code 2015-08-21 00:37:46 -07:00
vmwgfx_fence.c drm/vmwgfx: Replace iowrite/ioread with volatile memory accesses 2015-11-02 00:16:05 -08:00
vmwgfx_fence.h drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_fifo.c drm/vmwgfx: fix a warning message 2015-11-26 17:40:00 +01:00
vmwgfx_gmr.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_gmrid_manager.c drm/ttm: move fpfn and lpfn into each placement v2 2014-08-27 13:16:04 +02:00
vmwgfx_ioctl.c drm/vmwgfx: Replace iowrite/ioread with volatile memory accesses 2015-11-02 00:16:05 -08:00
vmwgfx_irq.c drm/vmwgfx: Relax irq locking somewhat 2015-11-06 16:15:40 +01:00
vmwgfx_kms.c drm/vmwgfx: Fix a width / pitch mismatch on framebuffer updates 2016-01-14 07:56:46 +10:00
vmwgfx_kms.h drm/vmwgfx: Implement the cursor_set2 callback v2 2015-12-08 12:55:46 +01:00
vmwgfx_ldu.c Backmerge drm-fixes merge into Linus's tree into drm-next. 2015-12-24 08:08:47 +10:00
vmwgfx_marker.c drm: vmwgfx: Use nsec based interfaces 2014-07-23 15:01:50 -07:00
vmwgfx_mob.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_overlay.c drm/vmwgfx: Fix up user_dmabuf refcounting 2015-09-14 01:13:11 -07:00
vmwgfx_prime.c drm/vmwgfx: Hook up the prime ioctls 2013-11-18 04:11:53 -08:00
vmwgfx_reg.h drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_resource_priv.h drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_resource.c drm/vmwgfx: Fix up user_dmabuf refcounting 2015-09-14 01:13:11 -07:00
vmwgfx_scrn.c Backmerge drm-fixes merge into Linus's tree into drm-next. 2015-12-24 08:08:47 +10:00
vmwgfx_shader.c drm/vmwgfx: Fix up user_dmabuf refcounting 2015-09-14 01:13:11 -07:00
vmwgfx_so.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_so.h drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_stdu.c Backmerge drm-fixes merge into Linus's tree into drm-next. 2015-12-24 08:08:47 +10:00
vmwgfx_surface.c drm/vmwgfx: check kmalloc return value 2015-12-15 13:37:57 +01:00
vmwgfx_ttm_glue.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00