All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sean Paul <sean@poorly.run>
To: dri-devel@lists.freedesktop.org
Cc: "Sean Paul" <seanpaul@chromium.org>,
	"Ville Syrjälä" <ville.syrjala@linux.intel.com>,
	"Fernando Ramos" <greenfoo@u92.eu>
Subject: [PATCH 04/16] Revert "drm/i915: cleanup: drm_modeset_lock_all() --> DRM_MODESET_LOCK_ALL_BEGIN() part 2"
Date: Sat,  2 Oct 2021 11:45:30 -0400	[thread overview]
Message-ID: <20211002154542.15800-4-sean@poorly.run> (raw)
In-Reply-To: <20211002154542.15800-1-sean@poorly.run>

From: Sean Paul <seanpaul@chromium.org>

This reverts commit 984c9949f1c4cf36c35aa2de5ee2b65c39379fd9.

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>
Signed-off-by: Sean Paul <seanpaul@chromium.org>
---
 drivers/gpu/drm/i915/display/intel_overlay.c | 40 ++++++++++----------
 1 file changed, 21 insertions(+), 19 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_overlay.c b/drivers/gpu/drm/i915/display/intel_overlay.c
index c623738c59c8..c0ee135e5499 100644
--- a/drivers/gpu/drm/i915/display/intel_overlay.c
+++ b/drivers/gpu/drm/i915/display/intel_overlay.c
@@ -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;
 }
-- 
Sean Paul, Software Engineer, Google / Chromium OS


  parent reply	other threads:[~2021-10-02 15:46 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-02 15:45 [PATCH 01/16] Revert "drm: cleanup: remove drm_modeset_(un)lock_all()" Sean Paul
2021-10-02 15:45 ` [PATCH 02/16] Revert "drm/amd: cleanup: drm_modeset_lock_all() --> DRM_MODESET_LOCK_ALL_BEGIN()" Sean Paul
2021-10-02 15:45 ` [PATCH 03/16] Revert "drm/gma500: " Sean Paul
2021-10-02 15:45 ` Sean Paul [this message]
2021-10-02 15:45 ` [PATCH 05/16] Revert "drm/i915: " Sean Paul
2021-10-02 15:45 ` [PATCH 06/16] Revert "drm/msm: " Sean Paul
2021-10-02 15:45 ` [PATCH 07/16] Revert "drm/nouveau: " Sean Paul
2021-10-02 15:45 ` [PATCH 08/16] Revert "drm/omapdrm: " Sean Paul
2021-10-02 15:45 ` [PATCH 09/16] Revert "drm/radeon: " Sean Paul
2021-10-02 15:45 ` [PATCH 10/16] Revert "drm/shmobile: " Sean Paul
2021-10-02 15:45 ` [PATCH 11/16] Revert "drm/tegra: " Sean Paul
2021-10-02 15:45 ` [PATCH 12/16] Revert "drm/vmwgfx: " Sean Paul
2021-10-02 15:45 ` [PATCH 13/16] Revert "drm: " Sean Paul
2021-10-02 15:45 ` [PATCH 14/16] Revert "drm/msm: cleanup: drm_modeset_lock_all_ctx() " Sean Paul
2021-10-02 15:45 ` [PATCH 15/16] Revert "drm/i915: " Sean Paul
2021-10-04  9:41   ` Ville Syrjälä
2021-10-04 15:56     ` Sean Paul
2021-10-04 20:31       ` Fernando Ramos
2021-10-13 11:49         ` Daniel Vetter
2021-10-02 15:45 ` [PATCH 16/16] Revert "drm: " Sean Paul

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211002154542.15800-4-sean@poorly.run \
    --to=sean@poorly.run \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=greenfoo@u92.eu \
    --cc=seanpaul@chromium.org \
    --cc=ville.syrjala@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.