aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/intel_engine_cs.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2019-03-08 04:36:57 -0500
committerChris Wilson <chris@chris-wilson.co.uk>2019-03-08 05:57:12 -0500
commit7d6ce55887a44c15c6df29e883d0ea567c8ac55c (patch)
treef2ec48386d3287b48ac2c9b5846e1c3c6eaa7c23 /drivers/gpu/drm/i915/intel_engine_cs.c
parentc6eeb4797eb94ad14bb34adfccbc6addad2cfd48 (diff)
drm/i915: Remove has-kernel-context
We can no longer assume execution ordering, and in particular we cannot assume which context will execute last. One side-effect of this is that we cannot determine if the kernel-context is resident on the GPU, so remove the routines that claimed to do so. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20190308093657.8640-4-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers/gpu/drm/i915/intel_engine_cs.c')
-rw-r--r--drivers/gpu/drm/i915/intel_engine_cs.c31
1 files changed, 0 insertions, 31 deletions
diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
index 18174f808fd8..8e326556499e 100644
--- a/drivers/gpu/drm/i915/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/intel_engine_cs.c
@@ -1090,37 +1090,6 @@ bool intel_engines_are_idle(struct drm_i915_private *i915)
1090 return true; 1090 return true;
1091} 1091}
1092 1092
1093/**
1094 * intel_engine_has_kernel_context:
1095 * @engine: the engine
1096 *
1097 * Returns true if the last context to be executed on this engine, or has been
1098 * executed if the engine is already idle, is the kernel context
1099 * (#i915.kernel_context).
1100 */
1101bool intel_engine_has_kernel_context(const struct intel_engine_cs *engine)
1102{
1103 const struct intel_context *kernel_context =
1104 to_intel_context(engine->i915->kernel_context, engine);
1105 struct i915_request *rq;
1106
1107 lockdep_assert_held(&engine->i915->drm.struct_mutex);
1108
1109 if (!engine->context_size)
1110 return true;
1111
1112 /*
1113 * Check the last context seen by the engine. If active, it will be
1114 * the last request that remains in the timeline. When idle, it is
1115 * the last executed context as tracked by retirement.
1116 */
1117 rq = __i915_active_request_peek(&engine->timeline.last_request);
1118 if (rq)
1119 return rq->hw_context == kernel_context;
1120 else
1121 return engine->last_retired_context == kernel_context;
1122}
1123
1124void intel_engines_reset_default_submission(struct drm_i915_private *i915) 1093void intel_engines_reset_default_submission(struct drm_i915_private *i915)
1125{ 1094{
1126 struct intel_engine_cs *engine; 1095 struct intel_engine_cs *engine;