[Intel-gfx] [PATCH 8/8] drm: Nuke drm_atomic_legacy_backoff

Maarten Lankhorst maarten.lankhorst at linux.intel.com
Tue Jul 25 09:36:14 UTC 2017


Op 25-07-17 om 10:01 schreef Daniel Vetter:
> Finally all users are gone!
>
> Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
> ---
>  drivers/gpu/drm/drm_atomic.c | 32 --------------------------------
>  include/drm/drm_atomic.h     |  2 --
>  2 files changed, 34 deletions(-)
>
> diff --git a/drivers/gpu/drm/drm_atomic.c b/drivers/gpu/drm/drm_atomic.c
> index 306fdca92abf..1b755439f591 100644
> --- a/drivers/gpu/drm/drm_atomic.c
> +++ b/drivers/gpu/drm/drm_atomic.c
> @@ -1588,38 +1588,6 @@ drm_atomic_add_affected_planes(struct drm_atomic_state *state,
>  EXPORT_SYMBOL(drm_atomic_add_affected_planes);
>  
>  /**
> - * drm_atomic_legacy_backoff - locking backoff for legacy ioctls
> - * @state: atomic state
> - *
> - * This function should be used by legacy entry points which don't understand
> - * -EDEADLK semantics. For simplicity this one will grab all modeset locks after
> - * the slowpath completed.
> - */
> -void drm_atomic_legacy_backoff(struct drm_atomic_state *state)
> -{
> -	struct drm_device *dev = state->dev;
> -	int ret;
> -	bool global = false;
> -
> -	if (WARN_ON(dev->mode_config.acquire_ctx == state->acquire_ctx)) {
> -		global = true;
> -
> -		dev->mode_config.acquire_ctx = NULL;
> -	}
> -
> -retry:
> -	drm_modeset_backoff(state->acquire_ctx);
> -
> -	ret = drm_modeset_lock_all_ctx(dev, state->acquire_ctx);
> -	if (ret)
> -		goto retry;
> -
> -	if (global)
> -		dev->mode_config.acquire_ctx = state->acquire_ctx;
> -}
> -EXPORT_SYMBOL(drm_atomic_legacy_backoff);
You're missing one patch here. We should also mark dev->mode_config.acquire_ctx __private. That way atomic commits will never be able to use lock_all. :)

Though I think it requires fixing vmwgfx_fb.c and i915 first.

Otherwise series looks good, so with review comments addressed.

Reviewed-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>


More information about the dri-devel mailing list