Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Jouni Högander" <jouni.hogander@intel.com>
To: intel-xe@lists.freedesktop.org
Cc: "Jouni Högander" <jouni.hogander@intel.com>
Subject: [Intel-xe] [RFC PATCH 1/3] Revert "FIXME: drm/i915: fence stuff"
Date: Wed, 27 Sep 2023 10:31:23 +0300	[thread overview]
Message-ID: <20230927073125.3825836-2-jouni.hogander@intel.com> (raw)
In-Reply-To: <20230927073125.3825836-1-jouni.hogander@intel.com>

This reverts commit 3e04b3baaaeb2ef9f7d9e5f26239b5c41061faf2.

We are about to add xe_sw_fence implementation and we need to remove
this temporary solution.

Signed-off-by: Jouni Högander <jouni.hogander@intel.com>
---
 drivers/gpu/drm/i915/display/intel_atomic.c   |  2 --
 drivers/gpu/drm/i915/display/intel_display.c  | 23 -------------------
 .../drm/i915/display/intel_display_types.h    |  2 --
 3 files changed, 27 deletions(-)

diff --git a/drivers/gpu/drm/i915/display/intel_atomic.c b/drivers/gpu/drm/i915/display/intel_atomic.c
index 3a53b3384685..7cf51dd8c056 100644
--- a/drivers/gpu/drm/i915/display/intel_atomic.c
+++ b/drivers/gpu/drm/i915/display/intel_atomic.c
@@ -330,9 +330,7 @@ void intel_atomic_state_free(struct drm_atomic_state *_state)
 	drm_atomic_state_default_release(&state->base);
 	kfree(state->global_objs);
 
-#ifdef I915
 	i915_sw_fence_fini(&state->commit_ready);
-#endif
 
 	kfree(state);
 }
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index b2e16cb8d026..505ca587b504 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -6867,7 +6867,6 @@ void intel_atomic_helper_free_state_worker(struct work_struct *work)
 
 static void intel_atomic_commit_fence_wait(struct intel_atomic_state *intel_state)
 {
-#ifdef I915
 	struct wait_queue_entry wait_fence, wait_reset;
 	struct drm_i915_private *dev_priv = to_i915(intel_state->base.dev);
 
@@ -6891,24 +6890,6 @@ static void intel_atomic_commit_fence_wait(struct intel_atomic_state *intel_stat
 	finish_wait(bit_waitqueue(&to_gt(dev_priv)->reset.flags,
 				  I915_RESET_MODESET),
 		    &wait_reset);
-#else
-	struct intel_plane_state *plane_state;
-	struct intel_plane *plane;
-	int i;
-
-	for_each_new_intel_plane_in_state(intel_state, plane, plane_state, i) {
-		struct xe_bo *bo;
-
-		if (plane_state->uapi.fence)
-			dma_fence_wait(plane_state->uapi.fence, false);
-		bo = intel_fb_obj(plane_state->hw.fb);
-		if (!bo)
-			continue;
-
-		/* TODO: May deadlock, need to grab all fences in prepare_plane_fb */
-		dma_resv_wait_timeout(bo->ttm.base.resv, DMA_RESV_USAGE_KERNEL, false, MAX_SCHEDULE_TIMEOUT);
-	}
-#endif
 }
 
 static void intel_atomic_cleanup_work(struct work_struct *work)
@@ -7232,7 +7213,6 @@ static void intel_atomic_commit_work(struct work_struct *work)
 	intel_atomic_commit_tail(state);
 }
 
-#ifdef I915
 static int
 intel_atomic_commit_ready(struct i915_sw_fence *fence,
 			  enum i915_sw_fence_notify notify)
@@ -7258,7 +7238,6 @@ intel_atomic_commit_ready(struct i915_sw_fence *fence,
 
 	return NOTIFY_DONE;
 }
-#endif
 
 static void intel_atomic_track_fbs(struct intel_atomic_state *state)
 {
@@ -7282,11 +7261,9 @@ int intel_atomic_commit(struct drm_device *dev, struct drm_atomic_state *_state,
 
 	state->wakeref = intel_runtime_pm_get(&dev_priv->runtime_pm);
 
-#ifdef I915
 	drm_atomic_state_get(&state->base);
 	i915_sw_fence_init(&state->commit_ready,
 			   intel_atomic_commit_ready);
-#endif
 
 	/*
 	 * The intel_legacy_cursor_update() fast path takes care
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index c0931d89d0dd..b1141fb125c8 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -672,9 +672,7 @@ struct intel_atomic_state {
 
 	bool rps_interactive;
 
-#ifdef I915
 	struct i915_sw_fence commit_ready;
-#endif
 
 	struct llist_node freed;
 };
-- 
2.34.1


  reply	other threads:[~2023-09-27  7:31 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-09-27  7:31 [Intel-xe] [RFC PATCH 0/3] Xe dma fence handling on atomic commit Jouni Högander
2023-09-27  7:31 ` Jouni Högander [this message]
2023-09-27  7:31 ` [Intel-xe] [RFC PATCH 2/3] drm/i915/display: Move fence completion wait away from display code Jouni Högander
2023-09-27  7:31 ` [Intel-xe] [RFC PATCH 3/3] fixup! drm/xe/display: Implement display support Jouni Högander
2023-09-27  7:34 ` [Intel-xe] ✓ CI.Patch_applied: success for Xe dma fence handling on atomic commit Patchwork
2023-09-27  7:34 ` [Intel-xe] ✗ CI.checkpatch: warning " Patchwork
2023-09-27  7:35 ` [Intel-xe] ✓ CI.KUnit: success " Patchwork
2023-09-27  7:42 ` [Intel-xe] ✓ CI.Build: " Patchwork
2023-09-27  7:43 ` [Intel-xe] ✓ CI.Hooks: " Patchwork
2023-09-27  7:44 ` [Intel-xe] ✗ CI.checksparse: warning " Patchwork
2023-09-27  8:16 ` [Intel-xe] ✓ CI.BAT: success " Patchwork
2023-09-27 10:33 ` [Intel-xe] [RFC PATCH 0/3] " Maarten Lankhorst
2023-09-27 10:45   ` Hogander, Jouni
2023-09-27 12:35     ` Maarten Lankhorst
2023-09-28  8:23       ` Hogander, Jouni
2023-09-28 16:10         ` Ville Syrjälä
2023-09-28 16:21           ` Ville Syrjälä
2023-10-16 11:22             ` Hogander, Jouni

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=20230927073125.3825836-2-jouni.hogander@intel.com \
    --to=jouni.hogander@intel.com \
    --cc=intel-xe@lists.freedesktop.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox