[Intel-gfx] [PATCH 32/38] drm/i915: Defer request emission

Chris Wilson chris at chris-wilson.co.uk
Mon Sep 26 09:04:12 UTC 2016


On Mon, Sep 26, 2016 at 11:53:05AM +0300, Joonas Lahtinen wrote:
> On ti, 2016-09-20 at 09:30 +0100, Chris Wilson wrote:
> > Move the actual emission of the request (the closing breadcrumb) from
> > i915_add_request() to the submit callback. (It can be moved later when
> > required.) This allows us to defer the allocation of the global_seqno
> > from request construction to actual submission, allowing us to emit the
> > requests out of order (wrt to the order of their construction, they
> > still will only be executed one all of their dependencies are resolved
> > including that all earlier requests on their timeline have been
> > submitted.) We have to specialise how we then emit the request in order
> > to write into the preallocated space, rather than at the tail of the
> > ringbuffer (which will have been advanced by the addition of new
> > requests).
> 
> No changelog, so assuming *out++ style change is the only one.

Yeah, it was only stylistic changes, there should have been no
functional changes. I went with *out++ after confirming Tvrtko's report
that gcc is now smart enough to emit the same code as out[0..N] using
*out++.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list