From 366826a5f15a5e459e7dca27af83fae3659ce69a Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Sun, 12 Mar 2023 12:26:56 +0100 Subject: [PATCH] Revert "drm/i915: Don't use BAR mappings for ring buffers with LLC" MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 4eb6789f9177a5fdb90e1b7cdd4b069d1fb9ce45 which is commit 85636167e3206c3fbd52254fc432991cc4e90194 upstream. It has been reported to cause problems on Alpine Linux and Manjaro Linux 5.15-based releases, so revert it for now until it can be sorted out. Reported-by: "A.P. Jo." Link: https://lore.kernel.org/r/NQJqG8n--3-9@tuta.io Link: https://gitlab.alpinelinux.org/alpine/aports/-/issues/14704 Reported-by: Philip Müller Link: https://lore.kernel.org/r/d955327b-cb1c-4646-76b9-b0499c0c64c6@manjaro.org Link: https://gitlab.freedesktop.org/drm/intel/-/issues/8284 Cc: John Harrison Cc: Chris Wilson Cc: Joonas Lahtinen Cc: Jani Nikula Cc: Rodrigo Vivi Cc: Tvrtko Ursulin Cc: intel-gfx@lists.freedesktop.org Cc: # v4.9+ Cc: Jouni Högander Cc: Daniele Ceraolo Spurio Cc: Jani Nikula Signed-off-by: Greg Kroah-Hartman --- drivers/gpu/drm/i915/gt/intel_ring.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/i915/gt/intel_ring.c b/drivers/gpu/drm/i915/gt/intel_ring.c index 6499f8ba953a..7c4d5158e03b 100644 --- a/drivers/gpu/drm/i915/gt/intel_ring.c +++ b/drivers/gpu/drm/i915/gt/intel_ring.c @@ -51,7 +51,7 @@ int intel_ring_pin(struct intel_ring *ring, struct i915_gem_ww_ctx *ww) if (unlikely(ret)) goto err_unpin; - if (i915_vma_is_map_and_fenceable(vma) && !HAS_LLC(vma->vm->i915)) { + if (i915_vma_is_map_and_fenceable(vma)) { addr = (void __force *)i915_vma_pin_iomap(vma); } else { int type = i915_coherent_map_type(vma->vm->i915, vma->obj, false); @@ -96,7 +96,7 @@ void intel_ring_unpin(struct intel_ring *ring) return; i915_vma_unset_ggtt_write(vma); - if (i915_vma_is_map_and_fenceable(vma) && !HAS_LLC(vma->vm->i915)) + if (i915_vma_is_map_and_fenceable(vma)) i915_vma_unpin_iomap(vma); else i915_gem_object_unpin_map(vma->obj);