aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/gt/intel_timeline.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2019-06-21 19:37:57 +0100
committerChris Wilson <chris@chris-wilson.co.uk>2019-06-21 19:47:48 +0100
commit9e9539800dd44b1190128d48a116f4660f5d206f (patch)
tree2c849e4e2c45b3ad64a1144d76625d4356353b73 /drivers/gpu/drm/i915/gt/intel_timeline.c
parentdrm/i915/guc: handle GuC messages received with CTB disabled (diff)
downloadlinux-dev-9e9539800dd44b1190128d48a116f4660f5d206f.tar.xz
linux-dev-9e9539800dd44b1190128d48a116f4660f5d206f.zip
drm/i915: Remove waiting & retiring from shrinker paths
i915_gem_wait_for_idle() and i915_retire_requests() introduce a dependency on the timeline->mutex. This is problematic as we want to later perform allocations underneath i915_active.mutex, forming a link between the shrinker, the timeline and active mutexes. Nip this cycle in the bud by removing the acquisition of the timeline mutex (i.e. retiring) from inside the shrinker. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Matthew Auld <matthew.auld@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190621183801.23252-1-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers/gpu/drm/i915/gt/intel_timeline.c')
-rw-r--r--drivers/gpu/drm/i915/gt/intel_timeline.c3
1 files changed, 0 insertions, 3 deletions
diff --git a/drivers/gpu/drm/i915/gt/intel_timeline.c b/drivers/gpu/drm/i915/gt/intel_timeline.c
index d6accef50f8e..44273b7c96f8 100644
--- a/drivers/gpu/drm/i915/gt/intel_timeline.c
+++ b/drivers/gpu/drm/i915/gt/intel_timeline.c
@@ -268,9 +268,6 @@ static void timelines_init(struct intel_gt *gt)
spin_lock_init(&timelines->hwsp_lock);
INIT_LIST_HEAD(&timelines->hwsp_free_list);
-
- /* via i915_gem_wait_for_idle() */
- i915_gem_shrinker_taints_mutex(gt->i915, &timelines->mutex);
}
void intel_timelines_init(struct drm_i915_private *i915)