Commit 91a8fb07 authored by Sean Paul's avatar Sean Paul

Revert "drm/i915: cleanup: drm_modeset_lock_all() --> DRM_MODESET_LOCK_ALL_BEGIN() part 2"

This reverts commit 984c9949.

This patchset breaks on intel platforms and was previously NACK'd by
Ville.

Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Cc: Fernando Ramos <greenfoo@u92.eu>
Acked-by: default avatarVille Syrjälä <ville.syrjala@linux.intel.com>
Signed-off-by: default avatarSean Paul <seanpaul@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20211002154542.15800-4-sean@poorly.run
parent 1f9e2f44
......@@ -1105,7 +1105,6 @@ int intel_overlay_put_image_ioctl(struct drm_device *dev, void *data,
struct drm_crtc *drmmode_crtc;
struct intel_crtc *crtc;
struct drm_i915_gem_object *new_bo;
struct drm_modeset_acquire_ctx ctx;
int ret;
overlay = dev_priv->overlay;
......@@ -1114,24 +1113,24 @@ int intel_overlay_put_image_ioctl(struct drm_device *dev, void *data,
return -ENODEV;
}
if (params->flags & I915_OVERLAY_ENABLE) {
drmmode_crtc = drm_crtc_find(dev, file_priv, params->crtc_id);
if (!drmmode_crtc)
return -ENOENT;
crtc = to_intel_crtc(drmmode_crtc);
if (!(params->flags & I915_OVERLAY_ENABLE)) {
drm_modeset_lock_all(dev);
ret = intel_overlay_switch_off(overlay);
drm_modeset_unlock_all(dev);
new_bo = i915_gem_object_lookup(file_priv, params->bo_handle);
if (!new_bo)
return -ENOENT;
return ret;
}
DRM_MODESET_LOCK_ALL_BEGIN(dev, ctx, 0, ret);
drmmode_crtc = drm_crtc_find(dev, file_priv, params->crtc_id);
if (!drmmode_crtc)
return -ENOENT;
crtc = to_intel_crtc(drmmode_crtc);
if (!(params->flags & I915_OVERLAY_ENABLE)) {
ret = intel_overlay_switch_off(overlay);
goto out_unlock;
}
new_bo = i915_gem_object_lookup(file_priv, params->bo_handle);
if (!new_bo)
return -ENOENT;
drm_modeset_lock_all(dev);
if (i915_gem_object_is_tiled(new_bo)) {
drm_dbg_kms(&dev_priv->drm,
......@@ -1196,11 +1195,14 @@ int intel_overlay_put_image_ioctl(struct drm_device *dev, void *data,
if (ret != 0)
goto out_unlock;
out_unlock:
DRM_MODESET_LOCK_ALL_END(dev, ctx, ret);
drm_modeset_unlock_all(dev);
i915_gem_object_put(new_bo);
return 0;
if (params->flags & I915_OVERLAY_ENABLE)
i915_gem_object_put(new_bo);
out_unlock:
drm_modeset_unlock_all(dev);
i915_gem_object_put(new_bo);
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