[Intel-gfx] [PATCH] drm/i915: Only mark the ctx as initialised after a SET_CONTEXT operation

Daniel Vetter daniel at ffwll.ch
Tue Jun 10 15:17:40 CEST 2014


On Tue, Jun 10, 2014 at 11:34:34AM +0100, Chris Wilson wrote:
> On Fri, May 30, 2014 at 02:16:30PM +0100, Chris Wilson wrote:
> > Fallout from
> > 
> > commit 46470fc932ac8a0e8317a220b3f4ea4ed903338e
> > Author: Mika Kuoppala <mika.kuoppala at linux.intel.com>
> > Date:   Wed May 21 19:01:06 2014 +0300
> > 
> >     drm/i915: Add null state batch to active list
> > 
> > undid the earlier fix of only marking the ctx as initialised after it is
> > saved by the hardware during a SET_CONTEXT operation.
> > 
> > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > Cc: Ville Syrjälä <ville.syrjala at linux.intel.com>
> > Cc: Damien Lespiau <damien.lespiau at intel.com>
> > Cc: Mika Kuoppala <mika.kuoppala at intel.com>
> > Cc: Ben Widawsky <ben at bwidawsk.net>
> 
> Ping. Ben's comments do not impact upon the urgent need for this fix.

Ok, this code is extremely convoluted. ctx->last_ring is terrible, and we
should make a clear disdinction of which ctx->foo fields are for the
logical context and which for the per-engine stuff. Will be much more
important for execlists so that we properly fan out the state.

I'm ranting here a bit since it took me a while to realize that
->is_initialized is _only_ for the RCS stuff. I guess we should have
ctx->obj[ring] and ctx->is_initialized[ring] or even better, a substruct
i915_hw_context with an array.

</rant>

With that out of the way, this is Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>

Thanks, Daniel
-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch



More information about the Intel-gfx mailing list