[Intel-gfx] [PATCH v2 05/14] drm/i915: Deconstruct execute fence

Chris Wilson chris at chris-wilson.co.uk
Fri Feb 17 14:41:05 UTC 2017


On Fri, Feb 17, 2017 at 02:26:04PM +0000, Tvrtko Ursulin wrote:
> 
> On 14/02/2017 09:54, Chris Wilson wrote:
> >@@ -1036,12 +1011,11 @@ long i915_wait_request(struct drm_i915_gem_request *req,
> > 	if (flags & I915_WAIT_LOCKED)
> > 		add_wait_queue(errq, &reset);
> >
> >-	if (!i915_sw_fence_done(&req->execute)) {
> >-		DEFINE_WAIT(exec);
> >-
> >+	reset_wait_queue(&req->execute, &exec);
> >+	if (!req->global_seqno) {
> > 		do {
> >-			prepare_to_wait(&req->execute.wait, &exec, state);
> 
> Somehow I missed the moment when reset_wait_queue was introduced.
> But why you can't just use prepare_to_wait here?

In a few patches, we starting looping around at this point, so reset is
required then (and choosing to do reset now just avoid a few lines
later on). Then in a few more patches, the reset_wait_queue is eliminated
entirely.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list