drm/i915: Assert that we do not try to unsubmit a completed request

Assert that we do not try to unsubmit a completed request, as should we
try to resubmit it later, the ring is already past the request's
breadcrumb and the breadcrumb will not be updated.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20180129094912.14428-1-chris@chris-wilson.co.uk
Reviewed-by: Michał Winiarski <michal.winiarski@intel.com>
This commit is contained in:
Chris Wilson 2018-01-29 09:49:12 +00:00
parent 7fb9ee5db2
commit c7cc144d8f
1 changed files with 2 additions and 0 deletions

View File

@ -537,6 +537,8 @@ void __i915_gem_request_unsubmit(struct drm_i915_gem_request *request)
*/
GEM_BUG_ON(!request->global_seqno);
GEM_BUG_ON(request->global_seqno != engine->timeline->seqno);
GEM_BUG_ON(i915_seqno_passed(intel_engine_get_seqno(engine),
request->global_seqno));
engine->timeline->seqno--;
/* We may be recursing from the signal callback of another i915 fence */