linux/drivers/gpu/drm/vmwgfx
Thomas Hellstrom 09dc1387c9 drm/vmwgfx: Stabilize the command buffer submission code
This commit addresses some stability problems with the command buffer
submission code recently introduced:

1) Make the vmw_cmdbuf_man_process() function handle reruns internally to
avoid losing interrupts if the caller forgets to rerun on -EAGAIN.
2) Handle default command buffer allocations using inline command buffers.
This avoids rare allocation deadlocks.
3) In case of command buffer errors we might lose fence submissions.
Therefore send a new fence after each command buffer error. This will help
avoid lengthy fence waits.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Sinclair Yeh <syeh@vmware.com>
2015-10-21 21:31:49 +02: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: Stabilize the command buffer submission code 2015-10-21 21:31:49 +02: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: Map the fifo as cached 2015-09-14 01:17:43 -07:00
vmwgfx_drv.h drm/vmwgfx: Map the fifo as cached 2015-09-14 01:17:43 -07: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: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_fence.h drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_fifo.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07: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: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_irq.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_kms.c drm/vmwgfx: Fix uninitialized return in vmw_kms_helper_dirty() 2015-09-24 00:22:00 -07:00
vmwgfx_kms.h Merge branch 'vmwgfx-next' of git://people.freedesktop.org/~thomash/linux into drm-next 2015-08-17 16:03:48 +10:00
vmwgfx_ldu.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07: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
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 drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07: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 drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00
vmwgfx_surface.c drm/vmwgfx: Fix kernel NULL pointer dereference on older hardware 2015-10-13 00:16:48 -07:00
vmwgfx_ttm_glue.c drm/vmwgfx: Fix copyright headers 2015-08-12 10:06:56 -07:00