Commit 4e0858a6 authored by Thomas Hellstrom's avatar Thomas Hellstrom

drm/vmwgfx: Properly flush cursor updates and page-flips

With the introduction of the new command buffer mechanism,
proper care wasn't taken to flush cursor image updates and
event-less screen-target page-flips.

Fix this by introducing explicit flush points.
Signed-off-by: default avatarThomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: default avatarBrian Paul <brianp@vmware.com>
parent b76ff5ea
...@@ -78,7 +78,7 @@ int vmw_cursor_update_image(struct vmw_private *dev_priv, ...@@ -78,7 +78,7 @@ int vmw_cursor_update_image(struct vmw_private *dev_priv,
cmd->cursor.hotspotX = hotspotX; cmd->cursor.hotspotX = hotspotX;
cmd->cursor.hotspotY = hotspotY; cmd->cursor.hotspotY = hotspotY;
vmw_fifo_commit(dev_priv, cmd_size); vmw_fifo_commit_flush(dev_priv, cmd_size);
return 0; return 0;
} }
......
...@@ -717,6 +717,8 @@ static int vmw_stdu_crtc_page_flip(struct drm_crtc *crtc, ...@@ -717,6 +717,8 @@ static int vmw_stdu_crtc_page_flip(struct drm_crtc *crtc,
&event->event.tv_usec, &event->event.tv_usec,
true); true);
vmw_fence_obj_unreference(&fence); vmw_fence_obj_unreference(&fence);
} else {
vmw_fifo_flush(dev_priv, false);
} }
return ret; return ret;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment