drm/vmwgfx: Don't create proxy surface for cursor
authorSinclair Yeh <syeh@vmware.com>
Fri, 2 Jun 2017 05:44:53 +0000 (07:44 +0200)
committerThomas Hellstrom <thellstrom@vmware.com>
Wed, 7 Jun 2017 10:07:35 +0000 (12:07 +0200)
With atomic, the cursor surface is treated like a FB.  Creating
a proxy surface for cursor doesn't gain us much benefit.

This fixes the issue on atomic enabled 2D VMs where the cursor
disappears.

Signed-off-by: Sinclair Yeh <syeh@vmware.com>
Reviewed-by: Thomas Hellstrom <thellstrom@vmware.com>
drivers/gpu/drm/vmwgfx/vmwgfx_kms.c

index ef9f3a2a40303290287b5259b7a71d2a8791ddb4..bcb6ddbdf43c242493201c81a2992528ab67a385 100644 (file)
@@ -1498,6 +1498,7 @@ vmw_kms_new_framebuffer(struct vmw_private *dev_priv,
         */
        if (vmw_kms_srf_ok(dev_priv, mode_cmd->width, mode_cmd->height)  &&
            dmabuf && only_2d &&
+           mode_cmd->width > 64 &&  /* Don't create a proxy for cursor */
            dev_priv->active_display_unit == vmw_du_screen_target) {
                ret = vmw_create_dmabuf_proxy(dev_priv->dev, mode_cmd,
                                              dmabuf, &surface);