diff mbox

[6/7] drm/vmwgfx: Send the correct nonblock option for atomic_commit

Message ID 1516109674-10087-7-git-send-email-thellstrom@vmware.com (mailing list archive)
State New, archived
Headers show

Commit Message

Thomas Hellstrom Jan. 16, 2018, 1:34 p.m. UTC
From: Deepak Rawat <drawat@vmware.com>

Page flip can be slow for vmwgfx in some cases, like need to do surface
copy to different surface or waiting for IN_FENCE_FD. Enabling
nonblocking commits for vmwgfx in case userspace request it.

Signed-off-by: Deepak Rawat <drawat@vmware.com>
Reviewed-by: Sinclair Yeh <syeh@vmware.com>
Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
---
 drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 27 +--------------------------
 1 file changed, 1 insertion(+), 26 deletions(-)

Comments

Daniel Vetter Jan. 17, 2018, 8:24 a.m. UTC | #1
On Tue, Jan 16, 2018 at 02:34:33PM +0100, Thomas Hellstrom wrote:
> From: Deepak Rawat <drawat@vmware.com>
> 
> Page flip can be slow for vmwgfx in some cases, like need to do surface
> copy to different surface or waiting for IN_FENCE_FD. Enabling
> nonblocking commits for vmwgfx in case userspace request it.
> 
> Signed-off-by: Deepak Rawat <drawat@vmware.com>
> Reviewed-by: Sinclair Yeh <syeh@vmware.com>
> Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>

yay for the seemingly well-working generic nonblocking commit. I looked
through your other patches and didn't spot anything in need of rectifying,
so fwiw Acked-by: Daniel Vetter <daniel.vetter@ffwll.ch>

Cheers, Daniel
> ---
>  drivers/gpu/drm/vmwgfx/vmwgfx_kms.c | 27 +--------------------------
>  1 file changed, 1 insertion(+), 26 deletions(-)
> 
> diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> index a7e7863..3f1ed51 100644
> --- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
> @@ -1548,35 +1548,10 @@ vmw_kms_atomic_check_modeset(struct drm_device *dev,
>  	return drm_atomic_helper_check(dev, state);
>  }
>  
> -
> -/**
> - * vmw_kms_atomic_commit - Perform an atomic state commit
> - *
> - * @dev: DRM device
> - * @state: the driver state object
> - * @nonblock: Whether nonblocking behaviour is requested
> - *
> - * This is a simple wrapper around drm_atomic_helper_commit() for
> - * us to clear the nonblocking value.
> - *
> - * Nonblocking commits currently cause synchronization issues
> - * for vmwgfx.
> - *
> - * RETURNS
> - * Zero for success or negative error code on failure.
> - */
> -int vmw_kms_atomic_commit(struct drm_device *dev,
> -			  struct drm_atomic_state *state,
> -			  bool nonblock)
> -{
> -	return drm_atomic_helper_commit(dev, state, false);
> -}
> -
> -
>  static const struct drm_mode_config_funcs vmw_kms_funcs = {
>  	.fb_create = vmw_kms_fb_create,
>  	.atomic_check = vmw_kms_atomic_check_modeset,
> -	.atomic_commit = vmw_kms_atomic_commit,
> +	.atomic_commit = drm_atomic_helper_commit,
>  };
>  
>  static int vmw_kms_generic_present(struct vmw_private *dev_priv,
> -- 
> 2.7.4
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff mbox

Patch

diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
index a7e7863..3f1ed51 100644
--- a/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_kms.c
@@ -1548,35 +1548,10 @@  vmw_kms_atomic_check_modeset(struct drm_device *dev,
 	return drm_atomic_helper_check(dev, state);
 }
 
-
-/**
- * vmw_kms_atomic_commit - Perform an atomic state commit
- *
- * @dev: DRM device
- * @state: the driver state object
- * @nonblock: Whether nonblocking behaviour is requested
- *
- * This is a simple wrapper around drm_atomic_helper_commit() for
- * us to clear the nonblocking value.
- *
- * Nonblocking commits currently cause synchronization issues
- * for vmwgfx.
- *
- * RETURNS
- * Zero for success or negative error code on failure.
- */
-int vmw_kms_atomic_commit(struct drm_device *dev,
-			  struct drm_atomic_state *state,
-			  bool nonblock)
-{
-	return drm_atomic_helper_commit(dev, state, false);
-}
-
-
 static const struct drm_mode_config_funcs vmw_kms_funcs = {
 	.fb_create = vmw_kms_fb_create,
 	.atomic_check = vmw_kms_atomic_check_modeset,
-	.atomic_commit = vmw_kms_atomic_commit,
+	.atomic_commit = drm_atomic_helper_commit,
 };
 
 static int vmw_kms_generic_present(struct vmw_private *dev_priv,