diff options
author | Michel Thierry | 2017-06-20 11:57:44 +0200 |
---|---|---|
committer | Chris Wilson | 2017-06-20 22:00:03 +0200 |
commit | c64992e035d7cb2b469f933e33ee89625df97df5 (patch) | |
tree | a0893f69e83aa2c9e19846366e1ffc360d61bde7 /drivers/gpu/drm/i915/intel_ringbuffer.h | |
parent | drm/i915: Wait for concurrent global resets to complete (diff) | |
download | kernel-qcow2-linux-c64992e035d7cb2b469f933e33ee89625df97df5.tar.gz kernel-qcow2-linux-c64992e035d7cb2b469f933e33ee89625df97df5.tar.xz kernel-qcow2-linux-c64992e035d7cb2b469f933e33ee89625df97df5.zip |
drm/i915: Look for active requests earlier in the reset path
And store the active request so that we only search for it once.
v2: Check for request completion inside _prepare_engine, don't use
ECANCELED, remove unnecessary null checks (Chris).
v3: Capture active requests during reset_prepare and store it the
engine hangcheck obj.
v4: Rename commit, change i915_gem_reset_request to just confirm the
active_request is still incomplete, instead of engine_stalled (Chris).
v5: With style; pass the active request to gem_reset_engine, keep single
return in reset_prepare_engine (Chris).
v6: Moved before reset-engine code appears (Chris)
Suggested-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> (v5)
Signed-off-by: Michel Thierry <michel.thierry@intel.com>
Link: http://patchwork.freedesktop.org/patch/msgid/20170615201828.23144-2-michel.thierry@intel.com
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: http://patchwork.freedesktop.org/patch/msgid/20170620095751.13127-3-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers/gpu/drm/i915/intel_ringbuffer.h')
-rw-r--r-- | drivers/gpu/drm/i915/intel_ringbuffer.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h index 6aa20ac8cde3..d33c93444c0d 100644 --- a/drivers/gpu/drm/i915/intel_ringbuffer.h +++ b/drivers/gpu/drm/i915/intel_ringbuffer.h @@ -121,6 +121,7 @@ struct intel_engine_hangcheck { unsigned long action_timestamp; int deadlock; struct intel_instdone instdone; + struct drm_i915_gem_request *active_request; bool stalled; }; |