From: Chris Wilson Date: Mon, 29 Jan 2018 09:49:12 +0000 (+0000) Subject: drm/i915: Assert that we do not try to unsubmit a completed request X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=c7cc144d8f625cfb8f338e66d875d0ec42fc399a;p=openwrt%2Fstaging%2Fblogic.git 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 Link: https://patchwork.freedesktop.org/patch/msgid/20180129094912.14428-1-chris@chris-wilson.co.uk Reviewed-by: MichaƂ Winiarski --- diff --git a/drivers/gpu/drm/i915/i915_gem_request.c b/drivers/gpu/drm/i915/i915_gem_request.c index 06ec27a68f5c..0a890ef4c420 100644 --- a/drivers/gpu/drm/i915/i915_gem_request.c +++ b/drivers/gpu/drm/i915/i915_gem_request.c @@ -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 */